假设我有很多帖子,我想知道current_user是否喜欢它们。我在哪里放这个代码:控制器?模型?在设计中,从模型中访问current_user没有简单的方法,将@posts.each {|p| p.liked_this = p.liked_this?}
添加到我的所有控制器中似乎很尴尬。
有什么建议吗?
答案 0 :(得分:2)
您可以从控制器进行查询。
Posts.liked_by(current_user)
(其中liked_by
是Post
模型中的方法。)
或者您可以使用sentient_user gem让模特访问您当前的用户。
在之前的项目中,我们大量使用了sentient_user,因为我们的模型层非常关注用户权限等。