Rails命名约定:“Miss”,“Kiss”,“Bus”等

时间:2013-02-05 17:06:19

标签: ruby-on-rails naming-conventions

当需要以一个以“s”结尾的单词(例如链接总线)命名时,我应该如何命名我的模型?我想轨道会将它复数化,将另一个“s”放在这个词的末尾。但我希望我的桌子被称为“公共汽车”而不是“巴士”。

1 个答案:

答案 0 :(得分:4)

Rails将在生成模型时使用String#pluralize为您处理此问题:

% rails g model bus                                                                                                                                                                            
      invoke  active_record
      create    db/migrate/20130205170847_create_buses.rb
      create    app/models/bus.rb
      invoke    rspec
      create      spec/models/bus_spec.rb

由此产生的迁移:

# ...
    create_table :buses do |t|
      t.timestamps
    end
# ...

您也可以在rails c中自行尝试:

[1] pry(main)> 'bus'.pluralize
=> "buses"
[2] pry(main)> 'miss'.pluralize
=> "misses"
[3] pry(main)> 'kiss'.pluralize
=> "kisses"