Ruby on rails Rails:访问父资源
我得到的config/routes.rb文件如下: map.resources :categories, :shallow => true do |cat| cat.resources :entries, :member => {:yes => :post, :no => :post } end map.resources:categories,:shallow=>true do | cat| cat.resources:entries,:member=>{:yes=>:post,:no=>:post} 结束 我的目标是使用“是”和“否”按钮来修改我的条目(这就像一个游戏,是和否是条目的答案) 我希望当我点击yes或no时,我会回到category/:category_id/条目,因为那里有漂亮的布局,等等 问题是,我从entries/:entry\u id获得了yes方法,因此我丢失了该条目所在的类别id,我不知道如何获得该类别的链接Ruby on rails Rails:访问父资源,ruby-on-rails,routing,Ruby On Rails,Routing,我得到的config/routes.rb文件如下: map.resources :categories, :shallow => true do |cat| cat.resources :entries, :member => {:yes => :post, :no => :post } end map.resources:categories,:shallow=>true do | cat| cat.resources:entries,:member=>{:yes=>:post,
我想我可以尝试不使用:shallow参数,所以我得到了完整的路径,但我可能会在层次结构中进一步(条目可能有注释),我想学习这个简单的问题如何管理这种情况 在按钮中,您可以指定如下类别:
link_to "Yes", yes_entry([@category, Entry.new]), :method => :post
但我不确定它是否有效,否则您可以尝试:
link_to "Yes", yes_entry(Entry.new, :category_id => @category), :method => :post
在按钮中,您可以按如下方式指定类别:
link_to "Yes", yes_entry([@category, Entry.new]), :method => :post
但我不确定它是否有效,否则您可以尝试:
link_to "Yes", yes_entry(Entry.new, :category_id => @category), :method => :post
你试过了吗?我没有使用:shallow选项(这个解决方案可能没有),但是resource\u controller支持某种多态资源(您可以使用url,比如:/entries、/category/3/entries、/whatever/12/entries等等)。然后,您可以使用以下内容生成指向条目的url:
<%= link_to 'Entries', collection_path %>
响应“是”和“否”操作 你试过了吗?我没有使用:shallow选项(这个解决方案可能没有),但是resource\u controller支持某种多态资源(您可以使用url,比如:/entries、/category/3/entries、/whatever/12/entries等等)。然后,您可以使用以下内容生成指向条目的url:
<%= link_to 'Entries', collection_path %>
响应“是”和“否”操作 如果条目是类别的子资源,那么模型之间可能存在父子关系,对吗?如果是,则可以使用:
redirect_to category_entries_path(@entry.category)
在您的
yes
和no
方法中。如果您的条目是类别的子资源,那么模型之间可能存在父子关系,对吗?如果是,则可以使用:
redirect_to category_entries_path(@entry.category)
在你的
yes
和no
方法中,它工作得非常好。我仍然被rails为程序员所做的大量事情弄得不知所措。我不知道模型中属于的东西会创建@entry.category,非常感谢。它工作得很好。我仍然被rails为程序员所做的大量事情弄得不知所措。不知道在模型中属于的将创建@entry.category,非常感谢。