嗨我正在使用新的ruby on rails开发我正在使用预订系统开始学习但我目前在控制器和视图方面遇到问题
首先我列出了客人在他添加的包中添加的所有菜单,我用这个
列出了它们_menuadded.html.erb
<h1>menu you added</h1>
<% @reservation_package.package_line_items.each do |menu|%>
<p><%= link_to menu.menu.name, menu_reservation_reservation_package_reservation_package_pages_path(@reservation,@reservation_package,menu) %></p>
<p><%= link_to "delete item" ,reservation_package_package_line_item_path(@reservation_package,menu), :method => :delete%></p>
<%end%>
然后我尝试使用此<p><%= link_to menu.menu.name, menu_reservation_reservation_package_reservation_package_pages_path(@reservation,@reservation_package,menu) %></p>
并生成此网址http://localhost:3000/reservations/10/reservation_packages/39/reservation_package_pages/menu.29
我只是想知道如果我能抓住他打开的菜单我的意思是如何抓住这个 localhost:3000 / reservations / 10 / reservation_packages / 39 / reservation_package_pages / menu.29
在我的菜单半静态页面控制器中,这条路线到哪,我试过这个
@reservation_package = ReservationPackage.find(params[:reservation_package_id])
@menu = Menu.find(params[:id])
但根本不起作用我只是想知道我是否正确行事或者如果我错了你能给我一个如何实现这种模块的建议吗?感谢更多力量
途径:
resources :services
resources :reservations do
resources :pages do
collection do
get :functionroomlist
get :packagelist
get :package
# get :menu
end
end
resources :reservation_packages do
resources :reservation_package_pages do
collection do
get :menulist
get :menu
end
end
resources :package_line_items
end
resources :reservation_function_rooms
end
答案 0 :(得分:0)
查看您正在呼叫的网址助手:
reservation_package_package_line_item_path
然后查看您定义的路线:
resources :reservation_packages do
resources :reservation_package_pages do
collection do
get :menulist
get :menu
end
end
resources :package_line_items
您已跳过嵌套的reservation_package_pages图层,这是您定义菜单的位置
你可以通过DOT 29来确定它生成的URL是否有问题!
如果它正常工作,你就有SLASH 29
做一个
rake routes
你应该看到正确的url助手用于进入菜单路径。