2014-01-17 129 views
0

這是我的錯誤,當我嘗試去我的聯繫頁面: 沒有路由匹配[GET] 「/ static_pages/contact_path」沒有路由匹配[GET] 「/ static_pages/contact_path」

這是我的routes.rb。

SampleApp::Application.routes.draw do 
get "static_pages/home" 
match '/help', to: 'static_pages#help', via: 'get' 
match '/about', to: 'static_pages#about', via: 'get' 
match '/contact', to: 'static_pages#contact', via: 'get' 
end 

這是我的控制器。

class StaticPagesController < ApplicationController 

    def home 
    end 

    def help 
    end 

    def about 
    end 

    def contact 
    end 
end 

這是我的文件home.html.erb

  • <%=的link_to 「聯繫人」, 'contact_path' %>
  • 注意的是,主頁沒有當我工作在roots.rb中使用家庭的匹配語法。我簡單地將它切換到get方法,這樣我就可以繼續工作。我希望匹配語法能夠工作,因爲它是我爲我的comsci類嘗試的技術。任何想法爲什麼我沒有得到根?根據我的控制器,我應該有一個,是嗎?

    回答

    2

    你的路線將創建一個contact_path幫手方法,您使用的字符串:

    <%= link_to "Contact", 'contact_path' %> 
    # ---------------------^------------^ 
    

    ,你要撥打的助手:如果你傳遞一個字符串

    <%= link_to "Contact", contact_path %> 
    

    link_to,它會創建一個<a href="contact_path">鏈接,並且該相對URL將被粘貼到當前URL上以生成您所看到的流浪/static_pages/contact_path URL。

    +0

    我試過,但沒有奏效。任何其他想法? – user2253215

    +0

    「不起作用」是什麼意思? –

    +0

    我們走吧。終端刷新問題。現在明白了。感謝所有幫助的人,特別是這個評論,因爲你解釋了我的教科書不太好。 – user2253215

    0

    的的link_to應該

    <%= link_to "Contact", contact_path %> 
    
    相關問題