我正在尝试在rails中创建一个表..我需要能够将id设置为正在进入的数据,因为我有三个(或更多)源,并且它们的ID必须匹配。
我根据我收到的数据手动设置ID。
当我使用迁移创建表时,我收到消息 “会创造隐含的序列” 我不希望这种情况发生......我该如何避免呢?
我知道为什么它总是在那里......但有时我们需要定制没有? :)
答案 0 :(得分:4)
ActiveRecord默认使用:primary_key列auto_increment。如果你不想要auto_increment,也许你必须自己创建主键。
create_table :table_name, :id => false do |t|
t.integer :id
t.timestamps
end
ActiveRecord::Base.connection.execute("ALTER TABLE table_name ADD PRIMARY KEY (id)")