2010-11-25 156 views
0

我正在使用Ruby On Rails 2.3.5与haml版本2.2.21(在我的environment.rb文件中)并且在视图中生成的所有链接(使用haml)都会自动添加链接最后。Ruby On Rails Application.html.haml

例:

%li 
    =link_to 'sign up', {:controller=> 'users' , :action=> 'signup'} 

显示 注册(用户/注册)

任何人都知道这是为什么?

回答

0

你应该能够做到:

=link_to 'Sign Up', user_registration_path 

对于未来的参考,你可以在命令

rake routes 

为了让应用程序中的所有命名路由的列表:

$ rake routes 
     new_user_session GET /users/sign_in(.:format)         {:action=>"new", :controller=>"devise/sessions"} 
      user_session POST /users/sign_in(.:format)         {:action=>"create", :controller=>"devise/sessions"} 
    destroy_user_session GET /users/sign_out(.:format)        {:action=>"destroy", :controller=>"devise/sessions"} 
     user_password POST /users/password(.:format)        {:action=>"create", :controller=>"devise/passwords"} 
    new_user_password GET /users/password/new(.:format)       {:action=>"new", :controller=>"devise/passwords"} 
    edit_user_password GET /users/password/edit(.:format)       {:action=>"edit", :controller=>"devise/passwords"} 
     user_password PUT /users/password(.:format)        {:action=>"update", :controller=>"devise/passwords"} 
    user_registration POST /users(.:format)           {:action=>"create", :controller=>"devise/registrations"} 
new_user_registration GET /users/sign_up(.:format)         {:action=>"new", :controller=>"devise/registrations"} 
edit_user_registration GET /users/edit(.:format)         {:action=>"edit", :controller=>"devise/registrations"} 
    user_registration PUT /users(.:format)           {:action=>"update", :controller=>"devise/registrations"} 
    user_registration DELETE /users(.:format)           {:action=>"destroy", :controller=>"devise/registrations"} 

路由名称列在最左边的列中。然后,您可以将'_path'附加到其中任何一个来访问该路径。

+0

感谢您的回复。但我正在按照你所说的去做,而且结果如我所描述的那样。它总是显示注册(用户/注册) – 2010-11-25 23:49:23