Ruby on rails Rails(generate model)正在创建一个单数表而不是复数表——该模型也在寻找一个单数表
我使用命令:Ruby on rails Rails(generate model)正在创建一个单数表而不是复数表——该模型也在寻找一个单数表,ruby-on-rails,ruby,Ruby On Rails,Ruby,我使用命令: $rails g型号设备 rails执行了以下操作: invoke active_record create db/migrate/20160822040448_create_equipment.rb create app/models/equipment.rb invoke test_unit create test/models/equipment_test.rb create test/fixtures/equi
$rails g型号设备
rails执行了以下操作:
invoke active_record
create db/migrate/20160822040448_create_equipment.rb
create app/models/equipment.rb
invoke test_unit
create test/models/equipment_test.rb
create test/fixtures/equipment.yml
正如您所看到的,迁移是独一无二的!因此,我重命名了迁移文件和表名,如下所示:
class CreateEquipments < ActiveRecord::Migration
def change
create_table :equipments do |t|
# ...
end
end
end
我可以通过在模型中添加以下行来修补它:
class Equipment < ActiveRecord::Base
self.table_name = 'equipments'
# ...
end
设备没有复数形式
这是此类词语的预期行为。在英语中,有些词语要么没有复数,要么只有复数,要么复数和单数都相同。在这种情况下,没有“设备”这个词,我们使用修饰语来指定单数和复数。那件设备。那堆设备。我会把这归咎于英语不是我的第一语言,但我确实有点感觉dumb@DiegoDiazdeBerenguer别担心,这正是我作为一名开发人员经常感到的
class Equipment < ActiveRecord::Base
self.table_name = 'equipments'
# ...
end
>> 'Equipment'.pluralize
=> "Equipment"
>> 'door'.pluralize
=> "doors"