【发布时间】:2014-04-21 14:28:29
【问题描述】:
我正在尝试使用 Heroku 和 rails 4 设置 MongoHQ。据我所知,我已正确设置所有内容,但现在出现此错误:
uninitialized constant Job::TempEmailContactStoreCsv
这是发生错误的Job 模型:
class Job < ActiveRecord::Base
belongs_to :user
def store_email_contact_csv(file)
contact_array = csv_to_array(file)
TempEmailContactStoreCsv.create(email_contact_array: contact_array, job_id: id)
end
end
还有我的 mongo 模型:
class TempEmailContactStoreCsv
include Mongoid::Document
field :email_contact_array, type: Array
field :job_id
def self.store(job_id, email_contact_array)
r = TempEmailContactStoreCsv.find_by(job_id: job_id)
if (r.nil?)
TempEmailContactStoreCsv.create!(job_id: job_id, email_contact_array: email_contact_array)
end
end
def self.exists?(job_id)
r = TempEmailContactStoreCsv.find_by(job_id: job_id)
return r.nil? == false
end
def self.retrieve(job_id)
return TempEmailContactStoreCsv.find_by(job_id: job_id)
end
def self.delete(job_id)
r = TempEmailContactStoreCsv.find_by(job_id: job_id)
r.destroy unless r.nil?
end
end
所以我的 mongo 模型似乎没有被初始化,命名空间对我来说也很奇怪。
关于导致此错误的原因以及如何修复它的任何想法?
【问题讨论】:
-
TempEmailContactStoreCsv 在磁盘的哪个位置?如果它不是 rails 期望找到的地方,那就可以解释了。
-
好点 - 它位于 app/models/temp_email_store_csv.rb
标签: ruby-on-rails mongodb heroku mongohq