Ошибка отправки явного значения первичного ключа в Model.create в rails v3 - PullRequest
1 голос
/ 17 октября 2010

Итак, я пытаюсь передать значение первичного ключа (id) в метод create, и он не работает.

Есть ли способ сделать это в rails?

Category.create!(:id => 2828, :name => 'Some Category')

1 Ответ

1 голос
/ 14 июля 2011

У меня похожая проблема. У меня есть таблица с primary_key с именем page_id Я пытался сделать

SomeClass.create :page_id => 123

и

SomeClass.create :id => 123

и

obj = SomeClass.new :page_id => 123
obj.save!

и

obj = SomeClass.new :id => 123
obj.save!

без удачи.

В любом случае, решение было

obj = SomeClass.new :title => 'title', :whatever_field => 'whaver value'
obj.id = 123
obj.save!

Не уверен, почему это работает, но это так. Просто вызовите id accessor в явном виде. Обратите внимание, что ПЕРВИЧНЫЙ КЛЮЧ в базе данных по-прежнему page_id (у меня нет поля id)

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...