自定义非自动递增ActiveRecord"id"列可能吗?

mar*_*ada 5 activerecord ruby-on-rails

我希望能够为Rails模型使用自定义ID(而不是自动递增默认值).基本上,所有的ID都是iTunes商店ID,它们只是长整数.是否可以关闭默认的自动递增ID并要求设置一个?这些ID也将在其他模型中用作外键.

Ale*_*lex 6

像这样的东西:

create_table :blah, {:id => false} do |t|
  t.int :my_custom_int_id
end
execute "ALTER TABLE blah ADD PRIMARY KEY (my_custom_int_id);"
Run Code Online (Sandbox Code Playgroud)