Ruby on rails rake任务中的未初始化常量
因此,当运行我的rake任务时,我返回一个未初始化的常量错误,它指向我的一个类。谷歌搜索错误只会指向大量的结果,表明您需要在任务定义中添加“=>:environment”,但我已经这样做了。我使用mongodb会改变什么吗?这是我的密码:Ruby on rails rake任务中的未初始化常量,ruby-on-rails,rake,Ruby On Rails,Rake,因此,当运行我的rake任务时,我返回一个未初始化的常量错误,它指向我的一个类。谷歌搜索错误只会指向大量的结果,表明您需要在任务定义中添加“=>:environment”,但我已经这样做了。我使用mongodb会改变什么吗?这是我的密码: namespace :db do task :betagen => :environment do key = BetaKey.create!(key: ARGV[0], limit: (ARGV[1] or -1)) puts "B
namespace :db do
task :betagen => :environment do
key = BetaKey.create!(key: ARGV[0], limit: (ARGV[1] or -1))
puts "Beta key '" + key.key + "' created."
end
end
(导致错误的原因是BetaKey。)(根据评论)
如果类的大小写为BetaKey
,请确保您的类文件名为beta_key.rb
(带下划线),因为这是自动加载程序所期望的。(根据注释)
如果类的大小写为
BetaKey
,请确保类文件名为beta_key.rb
(带下划线),因为这是自动加载程序所期望的。完全错误是什么?(即,哪个常量未初始化?)未初始化常量BetaKey(如前所述)是app/models目录中的beta_key.rb,类名的大写形式是否相同?我有app/models/BetaKey.rb,它的大写形式为BetaKey。我会继续尝试用下划线。是的,已经解决了,谢谢:P。如果你添加一个答案,我可以接受你的答案。完整的错误是什么?(即,哪个常量未初始化?)未初始化常量BetaKey(如前所述)是app/models目录中的beta_key.rb,类名的大写形式是否相同?我有app/models/BetaKey.rb,它的大写形式为BetaKey。我会继续尝试用下划线。是的,这解决了它,谢谢:P。如果你添加一个答案,我可以接受你的答案。