如何解决Rails中的范围问题
| 我是Rails的新手,对范围有疑问。我有两个班,邮政和故事。每个Post实例都是使用Story Show页面上的表单中的数据创建的。 Post的参数之一是从其创建Story实例的ID。我不知道如何获取此ID。即使我在控制器中的“ 0”下将其定义为“ 1”,@ story也为零 谢谢!解决方法
这实际上取决于您在哪里创建帖子,以及控制器的路由。我希望这是在PostsController中,而不是StoriesController中-因为它实际上并不属于后者。
因此,假设您使用的是PostsController,最好的方法(听上去每个帖子都与一个Story关联)是让此控制器嵌套在您的
routes.rb
文件中的故事中:
resources :stories do
resources :posts
end
然后,故事ID(假设表单已正确设置)在params[:story_id]
中可用-创作可能看起来像这样:
story = Story.find params[:story_id]
post = story.posts.create params[:post]
在这里解决一些假设,但希望这会有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。