我是Rails的新手,所以我正在学习Michael的Rails教程,并且遇到了一个问题。
在第7章第1节中,您应该显示用户页面,但我遇到了以下错误:
“动作‘索引’找不到UsersController"
当我尝试访问“localhost:3000/user”时
我不知道我需要包括什么信息,所以这里有一些,如果我需要更多,请告诉我。我非常感谢任何我能得到的帮助。我确实在这里查过类似的问题,但没有一个问题对我有帮助。
这是我的routes.rb
Rails.application.routes.draw do
root 'static_pages#home'
get 'help' => 'static_pages#help'
get 'about' => 'static_pages#about'
get 'contact' => 'static_pages#contact'
get 'signup' => 'users#new'
resources :users
endusers_controller.rb
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
end
endshow.html.erb
<%= @user.name %>, <%= @user.email %>我已经对照教程检查了我的代码,似乎找不到任何不同之处。我认为唯一的问题可能是当它要求我创建我刚刚点击的show.html.erb并点击我的在线IDE中的"create file“(Cloud9.io,这是教程推荐的)。Hartl只是说你必须手工创造,所以我想这就是他的意思。再一次,任何帮助都将不胜感激。谢谢。
发布于 2015-08-09 05:41:59
您只需要索引的地标,这是在两个文件中完成的。答案在第九章的书中,这是你所做的。
首先,在users_controller.rb中添加以下内容:
def index
@users = User.all
end接下来,创建app/view/user/index.html.erb文件并添加以下内容
<% provide(:title, 'All users') %>
<h1>All Users</h1>这本书后面还会做更多的工作,但是为了继续下去,没有任何愚蠢的、不必要的错误,这就足够了。
发布于 2015-06-23 23:43:41
您需要向控制器添加索引操作。
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
end
def index
@users = User.all
end
endhttps://stackoverflow.com/questions/31015211
复制相似问题