首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails Hartl教程第7章-无法为UsersController找到动作“索引”

Rails Hartl教程第7章-无法为UsersController找到动作“索引”
EN

Stack Overflow用户
提问于 2015-06-23 23:32:59
回答 2查看 287关注 0票数 1

我是Rails的新手,所以我正在学习Michael的Rails教程,并且遇到了一个问题。

在第7章第1节中,您应该显示用户页面,但我遇到了以下错误:

“动作‘索引’找不到UsersController"

当我尝试访问“localhost:3000/user”时

我不知道我需要包括什么信息,所以这里有一些,如果我需要更多,请告诉我。我非常感谢任何我能得到的帮助。我确实在这里查过类似的问题,但没有一个问题对我有帮助。

这是我的routes.rb

代码语言:javascript
复制
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
end

users_controller.rb

代码语言:javascript
复制
class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
  end

  def new
  end
end

show.html.erb

代码语言:javascript
复制
<%= @user.name %>, <%= @user.email %>

我已经对照教程检查了我的代码,似乎找不到任何不同之处。我认为唯一的问题可能是当它要求我创建我刚刚点击的show.html.erb并点击我的在线IDE中的"create file“(Cloud9.io,这是教程推荐的)。Hartl只是说你必须手工创造,所以我想这就是他的意思。再一次,任何帮助都将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-09 05:41:59

您只需要索引的地标,这是在两个文件中完成的。答案在第九章的书中,这是你所做的。

首先,在users_controller.rb中添加以下内容:

代码语言:javascript
复制
def index
  @users = User.all
end

接下来,创建app/view/user/index.html.erb文件并添加以下内容

代码语言:javascript
复制
<% provide(:title, 'All users') %>
<h1>All Users</h1>

这本书后面还会做更多的工作,但是为了继续下去,没有任何愚蠢的、不必要的错误,这就足够了。

票数 2
EN

Stack Overflow用户

发布于 2015-06-23 23:43:41

您需要向控制器添加索引操作。

代码语言:javascript
复制
class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
  end

  def new
  end

  def index
    @users = User.all
  end
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31015211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档