рельсы полиморфный запрос - PullRequest
3 голосов
/ 08 апреля 2011

Почему

@discussions = Discussion.where(:discussable => @discussable) 

не работает.пока что эта работа:

@discussions = Discussion.where(:discussable_id => @discussable.id, :discussable_type => @discussable.class.to_s)

Спасибо.

Ответы [ 2 ]

7 голосов
/ 23 октября 2012

Похоже, что запрос на удаление, который исправляет эту проблему, был объединен с master 1 месяц назад:

https://github.com/rails/rails/pull/7273

К сожалению, он будет выпущен только в Rails 4: (

1 голос
/ 08 апреля 2011

Потому что в первом вы передаете полный экземпляр модели.Атрибут должен быть идентификатором (целое число), и вы передаете объект.Второй в порядке, потому что вы передаете идентификатор (правильно).

...