0
#Vote Model
belongs_to :voteable, :polymorphic => true
belongs_to :voter, :polymorphic => true
#votes table
Voteid: integer, vote: boolean, voteable_id: integer, voteable_type: string, voter_id: integer, voter_type: string, created_at: datetime, updated_at: datetime
#User
has_many :voteables, :foreign_key => :voter_id, :class_name => "Vote"
has_many :votes, :foreign_key => :voter_id
#Vote_Item model
acts_as_voteable
has_many :voters, :class_name => "Vote", :foreign_key => :voteable_id
Давайте скажем, 50 пользователей проголосовали на VoteItem1, что это лучший способ узнать, что другие VoteItem (s) большинство из тех же 50 пользователей проголосовали на?Tricky Ассоциация Вопрос Rails
Thanks
Большинство где из тех 50, кто голосовал за VoteItem1, 47 проголосовали за VoteItem2, 42 проголосовали за VoteItem3 и т.д. Таким образом, большинство из них не является специфичным. Это определяется как то, что другое vote_item имеет максимальное количество пользователей из этого набора избирателей. Я ищу набор vot_items, идентифицированных так, как это упорядочено по количеству пользователей, с которыми они имеют общего с этим набором из 50. Надеюсь, что это имеет смысл. Благодаря! – badnaam
О, круто. То, что я написал выше, должно работать тогда. Дайте мне знать, если это сбивает с толку в синтаксисе, или мой ответ слишком короткий. – mark
Mark, спасибо. Здесь нет модели Voteable. – badnaam