我有一个与用户关联的帖子模型(想想'帖子所有者')。
class Post < ActiveRecord
belongs_to :user
(...)
end
在我的Post#index动作/视图中,我想只显示属于当前登录用户的帖子。
因此,第一种方法是以某种方式在Post模型中设置默认范围,但由于current_user仅在运行时已知,因此不适合模型(在MVC意义上),而是在控制器中。
那么,在控制器中实现“默认范围”的轨道方式是什么?
答案 0 :(得分:2)
如果您的用户类与其帖子有关联,请执行以下操作:
class User < ActiveRecord::Base
has_many :posts
end
然后在您的控制器中,您只需使用
current_user.posts
获取当前用户的所有帖子
答案 1 :(得分:1)
最简单,最干净的方法是为当前用户的帖子设置范围(在控制器中):
current_user.posts
您可以在其上方链接多个选择。