我在生成对象的url时遇到问题。Rails路由从对象生成路径
我已经在我的路线文件下面的代码:
match '(*path)/:name' => 'pages#show'
其引导到包含我的Page
控制器:
def show
if params[:path] and params[:name]
@page = Page.where(:path => params[:path], :title => params[:name]).first
elsif params[:name]
@page = Page.where(:path => "", :title => params[:name]).first
end
end
所以在localhost:3000/food/
的情况下会发现页面,:path => "", :title => 'food'
而localhost:3000/food/pizza
会找到页面wh ERE :path => "food/", :title => 'pizza'
的问题是试图获得从A Page
对象生成的URL。 所以link_to(@page.title, @page)
回报:
undefined method 'page_path'
如何获得路线反向运作将生成一个URL形成一个对象?
谢谢,这个工程很好 - 它打破了当路径=“”,但一个if子句删除:路径哈希修复。 –