【发布时间】:2013-06-12 16:08:41
【问题描述】:
在我的用户控制器中,我有以下内容:
class UsersController < ApplicationController
.....
def system_users
@users = User.all
respond_to do |format|
format.html # system_users.html.erb
format.json { render json: @user }
end
end
def edit_system_user
@user = User.find(params[:id])
respond_to do |format|
format.html # edit_system_user.html.erb
format.json { render json: @user }
end
end
在我的意见/用户/system_users.html.erb 中,我有:
<% @users.each do |user| %>
<tr class="<%= cycle("odd", "even") %>">
<td><%= link_to user["first"], edit_system_user_path(user["id"]) %></td>
<td><%= user["last"] %></td>
<td><%= user["email"] %></td>
<% end %>
在我的路线中,我有:
edit_system_user /edit_system_user(.:format) user#edit_system_user
但是,当我在views/users/system_users.html.erb 生成的实际视图中单击链接时,我收到以下错误消息:
uninitialized constant UserController
我的用户控制器是复数的,那么 UserController 是从哪里来的呢?不应该去UsersController吗?
【问题讨论】:
-
你的文件名是
users_controller.rb吗? -
你的路由应该有
edit_system_user /edit_system_user(.:format) users#edit_system_user而不是user#edit_system_user。你的 config/routes.rb 中有什么? -
在我的 routes.rb 中,我错误地使用了用户而不是用户。这解决了这个问题。如果你回答这个,我会批准它
标签: ruby-on-rails controller routes