当命名间距模型时。包含文件夹的名称应该是复数形式吗?
即models/users/comment.rb
或models/user/comment.rb
?
当命名间距模型时。包含文件夹的名称应该是复数形式吗?
即models/users/comment.rb
或models/user/comment.rb
?
复数形式也可以,但我认为使用单数形式是个好习惯。
毕竟,模型默认情况下是单数的。
rails g model User/Comment
迁移后,通过以下方式访问它:
User::Comment
它必须与命名空间完全匹配,因此使命名空间单数意味着文件夹的单数。
我使用单数,我认为这很常见。毕竟,模型的路径是关于一个模型,而不是集合。复数在 Rails 中用于集合,如数组变量或数据库表名。控制器使用复数,我认为是因为 REST 约定。其他一切都是独一无二的。
只需像这样加载:命名空间模型
Rails::Initializer.run do |config|
# Your existing stuff
config.load_paths << "#{RAILS_ROOT}/app/models/pets"
end