创建新的嵌套资源?
我试图在我的Rails 3应用程序中创建一个新的嵌套资源的链接,但我无法弄清楚。 什么是链接到新的嵌套资源的语法
解:
确保你的资源正确地嵌套在你的路线文件中。
resources :books do
resources :chapters
end
然后在你的视图脚本中,你可以像这样调用它:
<%= link_to 'New Chapter', new_book_chapter_path(@book) %>
Rails路由指南相当有帮助。
注意:如果您收到一条消息,如Couldn't find Book without an ID
,则问题不在于链接,而是您的控制器中的代码。
def new
@book = Book.find(params[:book_id]) #instead of :id
@chapter = @book.chapter.new
respond_with(@chapter)
end
改变路线
map.resources :books do |book|
book.resources :chapters
end
然后使用它
link_to new_book_chapter_path(@book)
您也可以使用此链接了解更好的嵌套路线的概念
链接地址: http://www.djcxy.com/p/3037.html