У меня есть файл миграции, как показано ниже:
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 не может быть нулевой ошибкой!
Как я могу разрешить нулевое значение для внешнего ключа?