Rails:我的页面使用哪个控制器?

时间:2014-12-09 14:36:25

标签: ruby-on-rails ruby rails-routing formbuilder

在此页面上......

http://guides.rubyonrails.org/form_helpers.html

......在1.3节中说:

提交表单时,名称将与表单数据一起传递,并将使用用户为该字段输入的值进入控制器中的params哈希值。

我尝试添加的表单位于名为' whattypeofleaderareyou.html.rb'的页面上(带有视图)。如何判断使用哪个控制器?这取决于用户访问该页面的方式吗? (即最后一个URL请求?)。

我知道这可能没什么用,但是带你到这个页面的按钮有html:

<a class="btn btn-default" href="/whattypeofleader">next</a>

但是,这显然并没有告诉我很多关于哪个控制器用于带有表单的页面。

我意识到必须有一些基本的东西,我没有得到这个,但有人可以请花时间指出它是什么,并理想地解释它?

我应该补充一点,我已经反复检查了“耙路线”。但我认为有关映射到路径的路线列表有一些含义,我并不欣赏。我怀疑路径列表很重要,但我不理解含义。如果有人可以解释,那也很棒。

1 个答案:

答案 0 :(得分:0)

您可以run rake routes获取可用路线列表及其匹配的控制器。

如果应用程序正在运行,并且您知道要查找匹配控制器的URL,则在运行rails s时,您可以在其输出中看到哪个控制器的方法正在执行:

Started GET "/answers" for 127.0.0.1 at 2014-12-09 11:45:10 -0300
Processing by AnswersController#index as HTML
  Answer Load (0.3ms)  SELECT "answers".* FROM "answers" 
  Rendered answers/index.html.erb within layouts/application (3.2ms)
Completed 200 OK in 88ms (Views: 68.4ms | ActiveRecord: 2.4ms)

您看到该请求为GET /answers,此处AnswersController的{​​{1}}方法有参与。