1
我不知道是否有实现这个在我的控制器的轨道方式最好的办法:控制器中的Rails安全验证?
def show
@article = Article.find(params[:id])
# you can only view a public article or your own articles.
@article = nil unless @article.public? || @article.owner?(current_user)
end
def edit
@article = Article.find(params[:id])
# you can only edit your own articles
@article = nil unless @article.owner?(current_user)
end
我有一对夫妇验证这样在我的应用程序,我可以清楚地看到它很容易错过一个和给予你不应该的东西!
谢谢
这不是我想要的,但那是一个开始。这是一个更好的方法,但它会让我获得我自己的和公开的文章,我的意思是要么有公开文章,要么有我自己的文章。 –
也许像“Article.public.find(params [:id])|| current_user.articles.find(params [:id])”会工作吗? –
你最好把它包装成模型的方法。将current_user作为参数传递并将条件表达式移入方法中 – Anatoly