Rails的良好实践

Rya*_*igg 15 ruby-on-rails

我正在寻找人们使用Rails时良好*实践的例子.

我有几个如:

  • before_filter 调用在控制器类名称声明下面,在其他地方.
  • 命名空间的基本控制器是命名的BaseController,而不是ApplicationController.有,而且应该永远只有一个ApplicationController.
  • attr_* 方法定义在各自类的顶部.
  • 模型回调在attr_*方法之后,或在模型的顶部.
  • 验证位于模型的顶部,自定义验证方法被定义为private文件底部的方法.

现在我不是在寻找Ruby的良好实践,而是更多的Rails专用列表.上面列出的只是一个例子,而不是福音.

*我不想使用"最佳实践"这个术语,因为最好的意思是最终实践,而在所有代码中,人们可能不同意.

Pet*_*own 3

我发现一种非常一致的做法是括号何时合适。DSL 类宏(如验证和关联)在没有它们的情况下看起来很自然,而具有显式接收器和参数的方法在有它们的情况下似乎更好。

has_many :users

User.find_all_by_field(my_var)
Run Code Online (Sandbox Code Playgroud)

has_many(:users)

User.find_all_by_field my_var
Run Code Online (Sandbox Code Playgroud)