Ruby on rails 铁路协会问题
我有两种型号:Ruby on rails 铁路协会问题,ruby-on-rails,ruby-on-rails-3,associations,Ruby On Rails,Ruby On Rails 3,Associations,我有两种型号: Users, and Articles 每个用户都可以创建文章,但只能编辑自己的文章 有人能举个例子吗?(请提供型号、控制器和视图?) 谢谢 编辑 我不想要全部代码。我可以使用脚手架获得大部分代码。我需要的修改,我必须做到这一点。我最关心的是如何只允许文章的作者编辑它。这就是我要问的。我无法写出完整的示例代码,但我至少可以为您指出正确的方向 您正在描述两个模型之间的一对多关联。这是我在了解如何在Rails中设置这些关联方面所见过的最好的方法 一旦你做到这一点,你就可以很容易地根
Users, and Articles
每个用户都可以创建文章,但只能编辑自己的文章
有人能举个例子吗?(请提供型号、控制器和视图?)
谢谢
编辑
我不想要全部代码。我可以使用脚手架获得大部分代码。我需要的修改,我必须做到这一点。我最关心的是如何只允许文章的作者编辑它。这就是我要问的。我无法写出完整的示例代码,但我至少可以为您指出正确的方向 您正在描述两个模型之间的一对多关联。这是我在了解如何在Rails中设置这些关联方面所见过的最好的方法 一旦你做到这一点,你就可以很容易地根据文章的所有权限制访问。对于这样直截了当的事情,你可能不需要权限宝石,但有一些坚实的存在 我会保护控制器和视图中的访问。您可以简单地对照视图上的article对象检查当前用户,并在控制器中使用before过滤器保护文章
如果你在这条路上走得更远,并且有更具体的问题,我很乐意尝试回答。假设一篇文章
属于:user
,并且你有一个身份验证设置,它为你提供了一个当前用户
方法,你应该能够在你的文章控件中执行类似的操作:
def edit
@article = Article.find(params[:id])
if @article.user == current_user
render :edit
else
flash[:alert] = "You don't have permission to edit this article."
redirect_to some_path
end
end
您的
更新方法也需要类似的东西。我不确定是否有人愿意为您编写所有代码。我不想要全部代码。我可以使用脚手架获得大部分代码。我需要的修改,我必须做到这一点。我最关心的是如何只允许文章的作者编辑它。这就是我要问的。要回答这个问题,请看一看:我真的需要一块宝石来做那些“简单”的东西吗?你根本不需要它。但是,你得到的一件事是,你几乎知道他们的工作,他们已经为你解决了所有真正容易的事情。为什么要重新发明轮子?