СУШКА запроса на полиморфную ассоциацию Rails - PullRequest
1 голос
/ 21 января 2012

У меня есть полиморфная likes модель, для хранения произведений, комментариев, всего, что нравится людям.Есть ли способ высушить этот запрос?

user.likes.where(:likeable_id => thing.id, :likeable_type => thing.class)

Это не работает:

user.likes.where(:likeable => thing)

1 Ответ

3 голосов
/ 21 января 2012

Как насчет этого:

класс лайк ...

 # scope
 def self.for(object)
   scoped.where(:likeable_id => object.id, :likeable_type => object.class.to_s)
 end

конец

Вы бы тогда использовали это так:

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