Ruby on Rails的反模式

Jak*_*old 8 anti-patterns ruby-on-rails

什么是最常见的Ruby on Rails反模式以及如何避免它们?

Jör*_*tag 14

不学习Ruby.


rco*_*der 13

我在很多Rails代码中看到过两种主要的反模式:

  1. 观点中有很多"举重".比集合或字符串插值的简单迭代更复杂的事情应该是帮助器或模型方法.不要查询模型对象,构造大型JSON数组或从ERB模板更新会话变量.

  2. 模型对象不可用于脚本或API实现.您的模型定义应用程序的域语义.您应该能够启动脚本/控制台,或者编写服务API包装器,它们重用现有的功能模型方法来操作应用程序中的所有关键数据.控制器功能仅在HTTP请求/响应周期中可用,这只是任何全功能站点生命周期的一部分.