我正在尝试运行自定义佣金测试。这是代码:
task :test => :environment do
user = User.first
puts "Winner: #{user.email}"
puts "test"
end
但是当我运行它时,我得到了这个错误。
$ rake test
rake aborted!
undefined method `email' for nil:NilClass
Tasks: TOP => test
(See full trace by running task with --trace)
我为什么无法访问类User的任何见解?即使我有:环境在哪里?
答案 0 :(得分:1)
我最近遇到了类似的事情。我试图获得id
并且在使用映射之前我无法使其工作。试试这个:
task :test => :environment do
email = User.first.map(&:email)
puts "Winner: #{email}"
puts "test"
end
我并不是说这是正确的方法,但它对我有用。
答案 1 :(得分:0)
您收到此错误的原因是由于某种原因您没有获得
的任何用户User.first
您可以使用调试器进行检查,或者只需尝试
User.first.nil?