我创建了一个新表(通过迁移),然后手动添加了一个模型-模型如下所示:
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
我在这个案子里缺了什么?
最佳答案
尝试在控制器类中使用::UserData
而不是UserData
。
关于ruby-on-rails - Rails-创建新模型并出现错误“未初始化的常量”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18132524/