ple*_*oux 10 routes ruby-on-rails-3
当我尝试访问用户时显示错误#show page通过命名路由(http:// localhost:3000/profile /)...否则当我尝试使用标准URL访问它时我没有错误( HTTP://本地主机:3000 /用户/电流).如果我耙路线我的路线似乎是正确的,因为它适用于标准网址,我真的不知道为什么我得到无路由匹配错误.为什么当我甚至没有尝试访问它时为什么试图寻找行动'毁灭'的路线匹配?
Starcast::Application.routes.draw do
match "login" => 'user_sessions#new', :as => :login
match "logout" => 'user_sessions#destroy', :as => :logout
resources :user_sessions
match "profile" => 'users#show'
resources :users
resources :casters
resources :casts
resources :orders
root :to => "home#index"
end
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
ActionView::Template::Error (No route matches {:action=>"edit", :controller=>"users"}):
1: <% title "Welcome #{@user.username}" %>
2:
3: <%= link_to "Edit your profil", edit_user_path %>
4:
5: <% has_role? :caster do %>
6: <% if @user.caster %>
app/views/users/show.html.erb:3:in `_app_views_users_show_html_erb___2116234531537545622_2170017780__3613739707062673465'
Run Code Online (Sandbox Code Playgroud)
jen*_*233 25
编辑/显示/销毁/更新路径需要一个id参数...即edit_user_path(current_user.id)...如果您不想这样做,您需要使您的路由使用资源:user(而不是资源:用户)如果你做得不对,将会引起很多人头疼.
| 归档时间: |
|
| 查看次数: |
14097 次 |
| 最近记录: |