ActiveRecord新建记录时指定ID
@ · Monday, Jul 1, 2013 · 1 minute read · Update at Jul 1, 2013

ActiveRecord默认数据库都用ID作为主键

而主键默认都自增

某些特殊情况下,我们需要自定义ID怎么办(前提是不存在ID冲突)

目前查到的两个方法:

通过参数指定

User.create!({id: 9527, email: 'leopku@xxx.com'}, without_protection: true)

通过 block 指定

User.create!(email: 'leopku@xxx.com') { |u| u.id= 9527 }

Social Links