2013-08-22 26 views
0

設置了一個param我敢肯定,這事做與我的N00B的語法,但我無法工作了它是什麼......Rails的添加ID作爲URL

我通過循環創建菜單通過我的子頁面表格中的項目並創建一個鏈接返回的每一個項目,像這樣:

<% @subpages.each do |menu| %> 
<%= link_to(menu.name, {:controller => 'public', :action => "page", :id => menu.permalink }, :class => "show action footer-link") %> 
<% end %> 

這是工作的罰款在我的網站的首頁,但如果你訪問的子頁面之一,讓我們說約我們頁面:

http://localhost:3000/public/page/about-us 

,然後嘗試再次使用菜單訪問「聯繫我們」,而不是帶你到這個環節,我會期望:

http://localhost:3000/public/page/contact-us 

它把你帶到這個鏈接:

http://localhost:3000/public/page/about-us?id=contact-us 

我在這裏做什麼學校男孩錯誤?

在此先感謝。

編輯:我的路線

root :to => "public#index" 
    get 'admin', :to => 'access#menu' 
    get 'public/show/:permalink', :to => 'public#show' 
    get 'public/page/:permalink', :to => 'public#page' 
+0

Please pas你的路線在這裏。 –

+0

添加了到OQ的路由 - 感謝 –

回答

0

我設法得到它通過傳遞工作:固定鏈接參數去控制,而不是ID

<% @subpages.each do |menu| %> 
    <%= link_to(menu.name, { :action => "page", :permalink => menu.permalink }, :class => "show action footer-link") %> 
<% end %> 
0

試試這個:

<% @subpages.each do |menu| %> 
    <%= link_to(menu.name, page_public_path(menu.permalink), :class => "show action footer-link") %> 
<% end %> 

感謝

+0

嗯..這是給我一個錯誤.. NoMethodError公開#頁 顯示/Users/Simo/Sites/nvs-git/app/views/layouts/public.html.erb在#68行# 未定義的方法'page_public_path'爲#<#:0x007f81ca10c9a0> –