问题描述
因此,我正在实现上/下投票机制,并为此生成了一个模型.到目前为止,我了解到一个视频(将进行投票的视频)具有一个vote_count,而vote_count属于视频.但是,我也想在我的poll_count数据库中跟踪对视频进行投票的用户.这是否意味着vote_count拥有许多用户,并且该用户属于一个vote_count?
So I'm implementing an up/down voting mechanism for which I'm generating a model. So far I understand that a video (what will be voted on) has one vote_count, and vote_count belongs to videos. However, I also want to track in my vote_count database the user that has voted on the video. Does that mean that a vote_count has many users, and that a user belongs to a vote_count?
推荐答案
将投票作为独立记录进行跟踪可能会更容易,例如:
It may be easier to track the votes as independent records, such as this:
class VideoVote < ActiveRecord::Base
belongs_to :user
belongs_to :video
end
class User < ActiveRecord::Base
has_many :video_votes
has_many :voted_videos,
:through => :video_votes,
:source => :video
end
class Video < ActiveRecord::Base
has_many :video_votes,
:counter_cache => true
has_many :voted_users,
:through => :video_votes,
:source => :user
end
如果有人上下投票,则需要以某种方式跟踪净投票总数.这可能很棘手,所以您可能需要寻找一个投票插件.
If you have people voting up and down, you will need to track the net vote total somehow. This can be tricky, so you may want to look for a voting plugin.
这篇关于模型关联问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!