现有ID上的“ NameError:未初始化的常量”

Jac*_*cob 3 ruby activerecord ruby-on-rails

rake db:seed在我的应用程序中运行时出现此错误:NameError: uninitialized constant AdmissionEpisode::AdminDistrictId

我不知道为什么-数据库中存在belongs_to :admin_districtmission_episode.admin_district_id,而AdmissionEpisode模型中也存在。有人知道发生了什么吗?

这是AdminDistrict种子:

districts.each do |code, name|
  AdminDistrict.create({
      code: code,
      name: name
    })
end
Run Code Online (Sandbox Code Playgroud)

这是AdmissionEpisode种子(AdmissionEpisode.create在线上发生NameError :

admissions.each do |code, total, male, female|
  district = AdminDistrict.find_by_code(code)

  AdmissionEpisode.create({
      admin_district_id: district.id,
      total: total,
      male: male,
      female: female
    })
end
Run Code Online (Sandbox Code Playgroud)

districtsadmissions上面提到的两个数据列表,所有这些都是,据我所知道的,正确的格式。该admin_district表也​​已正确填充。

Jac*_*cob 5

我在踢自己

问题是模型实际上具有belongs_to :admin_district_id,一旦将它们更改为belongs_to :admin_district,问题就解决了。

我认为问题出在生成模型时-我一定使用过admin_district_id:references而不是正确的模型admin_district:references