我正在使用设计作为身份验证系统,在用户登录后,我想显示一个下拉列表,用户必须在其中选择一个项目名称并单击下一步,这应该允许他查看已发布的与该项目相关的帖子. 该帖子可以被许多用户发布和查看,而用户应该只能编辑他发布的帖子,但可以查看所有帖子。我怎样才能做到这一点?
问问题
32 次
1 回答
1
您是否经历过任何基于角色的建模,您可以尝试cancan,或者对于您的简单用例,您与用户有 owner 或 belongs_to 关系。
因此,如果用户是否是帖子的所有者,您可以在编辑帖子时使用过滤器之前
before_filter :is_owner_of_post,:only=>[:edit,:update,:destroy]
protected
def is_owner_of_post
@post = Post.find(params[:id])
if @post.user != current_user
redirect_to root_path,:notice=>"Un authorized access"
end
end
阅读一些关于授权的文章或观看一些视频,您可以获得更多的想法。
于 2012-09-26T09:26:24.503 回答