Rails 中的命名空间

80学院第十一次课

大纲

  • 如何利用命名空间隔离作者端与读者端逻辑
  • Controller 的命名空间
  • Model 的命名空间
  • View 的命名空间

Controller 的命名空间

  • `rails generate controller writer::dashboard index`
  • 学习生成的代码的示例
  • 具名路由的变化
  • 作用: 模块化业务代码, 隔离逻辑代码.
  • 学习这里

Model 的命名空间

  • `rails generate writer::posts name:string`
  • 学习以上命令生成的示例代码
  • 注意数据库表的变化
  • 作用: 聚合相关 model 代码, 简洁代码流程
  • 学习这里

View 的命名空间

  • `render 'writer/xx.html.erb`
  • 注意引用路由时的变化
    • 如: `form_for [:writer, @post]`
  • 作用: 聚合相关页面, 简化代码阅读

作业内容

  • 利用以上知识, 实现读者端与作者端的业务逻辑隔离
  • 重新理解 "惯例优于配置" 的含义

Break time

任务安排

  • 完善作者端功能: 文章收益, 我的阅读
  • 完善读者端功能: 各微信菜单的页面实现

问题答疑与代码 review

Thx

80academy-lession-11

By Li Yafei

80academy-lession-11

  • 2,075