2012-03-19 230 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