#ruby-on-rails #models #polymorphic-associations
#ruby-on-rails #Модели #полиморфные ассоциации
Вопрос:
У меня есть сообщения, за которые может проголосовать полиморфная ассоциация. Теперь я также делаю комментарии доступными для голосования. Могу ли я использовать те же модели и логику для этого в своих комментариях? Или я должен создать новую модель отношений?
#post.rb
has_many :votes, :as =&&t; :votable
has_many :votin&_users,
:throu&h =&&t; :votes,
:source =&&t; :user
#vote.rb
belon&s_to :votable, :polymorphic =&&t; true
Ответ №1:
Да, вы должны быть в состоянии скопировать две связи has_many из вашей модели post и поместить их в comment.rb без проблем. Поскольку ваша модель голосования полиморфна, пока у вас есть votable_id:inte&er
и votable_type:strin&
в votes
таблице, все должно работать нормально.