全书目录

第三十八篇:Phoenix 完全指南 —— 实时频道城邦宇宙

第十九章:从零搭一座 Phoenix 城邦,最稳的工作流是什么

1 分钟 420 字 第 738 / 962 个阅读单元

如果你是新项目,我建议这样建:

#第一步:起城
bash
mix archive.install hex phx_new
mix phx.new city --live

Phoenix 1.8 系列要按官方变更基线理解,生产上通常至少准备 Erlang/OTP 25+。

#第二步:先做身份与通行证
bash
mix phx.gen.auth Accounts User users

这样你会有:

  • 用户体系
  • 会话
  • 当前 scope 主线
  • LiveView 兼容的认证入口
#第三步:先定职能部门,再定页面
bash
mix phx.gen.live Dispatch Incident incidents title:string status:string

重点不是“为了省手工”,而是先让你看到 Phoenix 推荐的边界:

  • Context
  • Schema
  • LiveView
  • HTML/表单
  • 测试
#第四步:优先把普通页面和 LiveView 页面跑通

也就是先问:

  • 这个功能是一次性办事窗口?
  • 还是持续在线中控台?
#第五步:只有在“频道协议”成立时才上 Channels

不要因为“Phoenix 擅长实时”就默认所有东西都用 Channel。

#第六步:跨页面同步才上 PubSub,在线名册才上 Presence

很多人会反过来:
一上来就先造一个超级广播系统,然后再找业务塞进去。
这通常是过度设计。