该网站是一个简单的社区,每个用户都可以创建帖子,用户可以“喜欢”他们或“不喜欢”他们.
我有一个Post和Like模型.目前,我通过post.likes.size列出所有帖子以及每个帖子的大小.喜欢帖子的按钮也有效.
我不知道怎么做是如何根据情况,如果帖子应该显示不同的按钮等(取决于current_user是否已经喜欢该帖子).
类似的模型非常简单:
User_id // current user Post_id // post to associate
提前致谢!
解决方法
您应该在用户模型中定义关联
如果它是ror 2. *在用户模型中添加方法.它应该是这样的:
has_many :likes def already_likes?(post) self.likes.find(:all,:conditions => ['post_id = ?',post.id]).size > 0 end
假设Like有字段user_id和post_id
当然还有看
if current_user.already_likes?(@post) #add unlike button end