1

コントローラーに、データベース内のすべてのユーザーを返すメソッドがあります。

class UsersController < ApplicationController
 # before_action :set_user, only: [:show]
  def index
       @users = User.all
  end

ターミナルで User.all をチェックすると (rails c)、たくさんの結果が得られますが、自分のビューから呼び出している場合

 <div>
    <% @users.each do |user| %>
      <%= user %>
    <% end %>
 </div>

undefined methodnil:NilClass` のそれぞれを取得しています

ルートに users リソースを含めました

PROJECT::Application.routes.draw do
  resources :users

私は何が欠けているのですか?

4

1 に答える 1

2

問題はルートではありません。ユーザーがまったくいません。したがって、 nil クラスごとに未定義のメソッドと表示されます

@users.each

@users は空です。ルートを使用してコントローラーに移動し、何らかのアクションを実行することはまだ何もしていません。

コントローラーで User.all.to_a を使用する

于 2013-10-12T02:55:52.323 に答える