: foreign_key не запрашивает из правого столбца? - PullRequest
0 голосов
/ 15 января 2010

У меня есть три модели: для того, чтобы задать вопрос, я назову их post, containertable1 и containertable2.

По сути, в таблице записей есть столбец с именем misc_id, в котором есть идентификатор элемента, который находится в containertable1 или containertable2. Я попытался установить связь с внешним ключом, но она не получается из указанного мной столбца.

Итак, вот как выглядит моя модель post.rb:
Класс Post own_to: containertable1,: polymorphic => true,: foreign_key => "misc_id"
own_to: containertable2,: polymorphic => true,: foreign_key => "misc_id"
set_table_name "транзакции"

А потом моя модель containertable1.rb:
класс Containertable1 has_many: транзакции

Но в скрипте / консоли, когда я запускаю Containertable1.find (: first) .posts, он выдает мне эту ошибку:

Неизвестный столбец 'posts.containertable1_id'

Я надеялся, что вместо этого он попытается найти столбец "misc_id". Может кто-нибудь дать представление о том, что я делаю неправильно? Большое спасибо:)

1 Ответ

0 голосов
/ 15 января 2010

Я немного поигрался с этим, думаю, я понял это.

внешний ключ должен находиться в моделях containertable.rb. Итак, вот что я изменил:

класс Containertable1 "misc_id"

...