2012-03-19 110 views
1

我工作on Rails的3我的路線是什麼?

我的網址是:http://localhost:3000/terms_and_conditions?val=pp

我的方法是如下:

class GeneralController < ApplicationController 

    def terms_and_conditions 
    if !params[:val].nil? 
     @val=params[:val] 
    else 
     @val='tc' 
    end 
    end 

end 

什麼將是我的路線?請幫我創建路線。

+0

我不明白 「什麼將是我的路線」。你能否擴大你的問題? – 2012-03-19 06:01:46

+0

我創造了這個 匹配「TERMS_AND_CONDITIONS」 =>「一般#TERMS_AND_CONDITIONS」 但現在我沒有路由錯誤 – 2012-03-19 06:28:12

回答

1

我建議你先閱讀標題爲Rails Routing from the Outside In的指南。

要設置一個簡單的GET訪問路徑添加以下到您的routes.rb文件

get "/terms_and_conditions" => "general#terms_and_conditions"

如果你需要的不僅僅是GET,你可以使用match代替。在您的應用程序根目錄中,您可以執行rake routes以查看您的應用程序的所有路線。關於您選擇公開/terms_and_conditions —如果您使用較短的路徑(如/terms和/或考慮做/terms-and-conditions),則會更好。

+0

我創造了這個,但現在我沒有路線錯誤 匹配「TERMS_AND_CONDITIONS」 =>「一般#TERMS_AND_CONDITIONS」 – 2012-03-19 06:27:28

+0

有一個錯字,確保它與上面相同。一旦你添加了這個內容進行調試,就用'rake routes'更新你的文章。謝謝。 – 2012-03-19 12:11:11

0

嘗試:

[YourAppNameHere]::Application.routes.draw do 
match '/terms_and_conditions', to: 'general#terms_and_conditions' 
end 
+0

我已經做到了這一點,但我得到了路線錯誤。 – 2012-03-19 07:22:34

+0

我的網址是http://本地主機:3000/TERMS_AND_CONDITIONS VAL = PP 我怎麼會得到VAL – 2012-03-19 07:23:24

+1

的價值你嘗試 ''匹配 '/ TERMS_AND_CONDITIONS':以=>「一般#terms_and_conditions'。一旦路線匹配,您可以在控制器或視圖中使用params [:val]獲取val的值。您可以嘗試以下URL以獲取有關路線的更多說明。 [link] http://stackoverflow.com/questions/5733101/understanding-rails-routes-match-vs-root-in-routes-rb [link] – Prashanth 2012-03-19 14:26:29