2

(移行によって) 新しいテーブルを作成し、手動でモデルを追加しました。モデルは次のようになります。

class UserData < ActiveRecord::Base
  belongs_to :user

  def self.save_user_data(data, cur_user)
    data.each do |d|
      puts "Saving: #{cur_user.id}, #{d['id']}, #{d['name']}"
      UserData.create!(:user_id => cur_user.id,
                       :name => d['name'])
    end
  end
end

テーブルは適切に作成されます。

/controllers/users/omniauth_callbacks_controller.rbからこのメソッドを次のように呼び出します。

UserData.save_user_data(@data, current_user) if @data

そして、このエラーが発生します:

uninitialized constant Users::OmniauthCallbacksController::UserData

この場合、何が欠けていますか?

4

1 に答える 1

3

コントローラー クラス::UserDataの代わりに使用してみてください。UserData

于 2013-08-08T17:52:51.373 に答える