我成功地将decent_exposure gem设置为railscast。
我想使用带有current_user的范围访问来进行编辑/更新/创建操作,以避免通过将对象的所有者与current_user进行比较来检查权限。
控制器:
class CommentsController < ApplicationController
expose(:article)
expose(:comments) { article.comments }
expose(:comment)
def index
end
def new
end
def create
if comment.save
redirect_to comment.article, :notice => "Successfully created comment!"
else
render :new
end
end
end
如何在我的编辑操作中使用decent_exposure这样的东西,例如:
@comment = current_user.comments.find(params[:id])
提前致谢!
答案 0 :(得分:1)
我认为你可以做到:
公开(:user_comments){current_user.comments}
暴露(:USER_COMMENT)
user_comment应限定为current_user.comments,您将使用user_comment将在您的视图中使用。