2011-06-11 43 views
3

我已經按照上創建和顯示使用頁面模型靜態頁面railscast和我的代碼如下所示:如何正確鏈接到靜態頁面?

頁面模式

有名稱,永久和說明的領域。

路線:

get "log_in" => "sessions#new", :as => "log_in" 
get "log_out" => "sessions#destroy", :as => "log_out" 
get "sign_up" => "users#new", :as => "sign_up" 
root :to => "users#new" 

resources :pages 

match ':permalink', :controller => 'pages', :action => 'show' 

_footer.html.erb

<div class="footer"> 
    <div class="footer_container"> 
    <%= link_to 'About Us', root_path('about') %> 
    </div> 
</div> 

去/本地主機:3000 /約顯示約正確頁,但在頁腳的鏈接要直接到/localhost:3000/.about並實際鏈接到註冊一個新的用戶頁面。

我怎樣才能讓我的鏈接指向/ about並顯示頁面?

感謝您的任何幫助,非常感謝!

+0

你試過< %= link_to'關於我們',root_path(:permalink =>'about')%>? – bor1s 2011-06-11 14:06:47

+0

@ bor1s,謝謝你看看,鏈接回'歡迎登機軌道頁面',並顯示'/ localhost:3000 /?permalink =' – Dave 2011-06-11 14:12:38

回答

3

root_path將始終帶您到用戶#new,因爲這是您在routes.rb文件中指定的內容。你可以做的是與名稱最後的路線:爲關鍵,就像這樣:

match ':permalink', :controller => 'pages', :action => 'show', :as => 'my_page' 

然後在你的意見,你應該能夠做這樣的事情:

<%= link_to 'About Us', my_page_path('about') %> 
+0

的網址非常感謝,這就完成了! – Dave 2011-06-11 14:16:48