0

私はこのような方法を持っています:

class ProfilesController < ApplicationController
  before_filter :authenticate_user!

  current_user

  def index
    @users = User.all
  end
  ...
end

そして私のルートは

match 'profile',  :controller => 'profiles', :action => 'index'

しかし、アクセスすると次のようhttp://127.0.0.1:8080/profileになります。

NoMethodErrorProfiles#index未定義eachのメソッドでnil:NilClass

4

2 に答える 2

2

これはUser.allnil を返すことを意味します。それぞれを呼び出す前に、ユーザーがいるかどうかを確認する必要があります。ビューをこのように変更しても、エラーは発生しません。

<% if @users %>          
  <% @users.each do |user| %>
    ...
  <% end %>
<% end %>
于 2012-04-22T16:22:46.873 に答える
0

働いた。current_user@Jesperから行を削除しましたがProfilesController、これはあなたが言ったフィルターに何かありますか?

于 2012-04-22T17:04:04.000 に答える