0
我想做一个简单的导入后台作业,使用resque导入一些csv信息。Resque无法更新对象 - 导轨
作业运行,但一旦我编辑好像它毁了什么的......
一旦作业运行时,它会发现第一个林的用户对象...然后在@ user.name它没有被设置,然后它不能保存。我可以在我的控制台中运行此代码,并且它工作得很好,只能在resque中破解。是否有限制,您不能使用对象或使用resque写入数据库?迄今为止浪费了6个小时尝试无数事情......请帮助。
def self.perform(chunk)
chunk.each do |i|
@user = User.where(:email => i[:email].to_s).first_or_initialize
@user.name = i[:name].to_s
if @user.save
puts @user.email
entity = Entity.find_by_email_domain(@user.email)
eur = EntityUser.where(:entity_id => entity.id, :user_id => @user.id).first_or_initialize
if eur.save
puts "Start: BLARGITY End"
topic = Topic.where(:number => i[:course_number].to_s).first_or_initialize
eu = TopicUser.where(:topic_id => topic.id, :user_id => user.id, :role_i => 1).first_or_initialize
else
eu = TopicUser.where(:topic_id => topic.id, :user_id => user.id).first_or_initialize
end
eu.save
end
end
end
end
我只是想与做,而不是寻找这样的,你可以看到现在的错误..
NoMethodError:未定义的方法`名称=”的零:NilClass
@user = User.find_by_email(i[:email])
puts "sdfdsf"
@user.name = i[:name]
puts @user.name