root_path还是root_url?

Lai*_*uan 25 routes ruby-on-rails

在rails中,有许多帮助器来指导我们的操作,例如collections_path new_member_path edit_member_path等等.

但根在哪里?有帮助者总是指向我的主页吗?

Ben*_*ret 46

这些助手存在,但你必须在之前设置你的根URL config/routes.rb:

root :to => "controller#action"
Run Code Online (Sandbox Code Playgroud)

你可以使用root_urlroot_path之后.

请注意,在使用_path帮助程序进行重定向时会有一个问题,您应该_url在重定向时使用它们(有关详细信息,请参阅@ LanguagesNamedAfterCoffee的注释).

  • 请记住,无论何时使用`redirect_to`,您都必须使用`root_url`. (10认同)
  • 在执行302重定向和朋友时,HTTP规范需要一个完全限定的URL,并且它将在一些宽松的浏览器中工作,但不应使用_path.(来自使用Rails的Agile Web开发) (10认同)