我正在努力训练如何建议/告诉activerecord默认不创建它的主索引。
任何人都知道我能做到这一点吗?
class CreateHouse < ActiveRecord::Migration
def change
create_table :houses do |table|
table.string :name, :null => false, :unique => true
table.integer :number, :null => false, :unique => true
table.string :category, :null => false
table.timestamps(:null => false)
end
add_index :houses, [:category, :number], :unique => true
end
end
感谢
答案 0 :(得分:2)
您可以将id: false
添加到create_table
定义中。请尝试以下方法:
class CreateHouse < ActiveRecord::Migration
def change
create_table :houses, id: false do |table|
table.string :name, :null => false, :unique => true
table.integer :number, :null => false, :unique => true
table.string :category, :null => false
table.timestamps(:null => false)
end
add_index :houses, [:category, :number], :unique => true
end
end
更新:
已更新create_table
和add_index
阻止使用:houses
符号,而不是kengimel在编辑请求中建议的:stores
(显然已被拒绝!)。