【发布时间】:2019-05-28 17:48:48
【问题描述】:
我有一个迁移文件如下:
def change
create_table :carts do |t|
t.string :order_number
t.decimal :total_price
t.bigint :user_id, null: true
t.string :status
t.timestamps
end
end
我想让user_id 为空,但我的架构文件将此迁移转换为:
t.bigint "user_id", null: false
所以在我的 cart.rb 模型中,即使我有
belongs_to :user, optional: true
它不起作用,当我尝试保存购物车对象时,我得到 ForeignKey can't be null 错误!
如何允许外键为空值?
【问题讨论】:
标签: ruby-on-rails activerecord ruby-on-rails-6