更改我的代码!我有一个错误:PG :: UndefinedColumn:ERROR:列students.year_course_id不存在第1行:SELECT COUNT()FROM“students”WHERE“students”。“year_cour ... ^:SELECT COUNT(< / em>)FROM“students”WHERE“students”。“year_course_id”= $ 1
答案 0 :(得分:4)
PG :: UndefinedColumn:错误:列students.year_course_id没有 存在LINE 1:SELECT COUNT()FROM“students”WHERE “学生”。“year_cour ... ^:SELECT COUNT()FROM”学生“在哪里 “学生”。“year_course_id”= $ 1
错误明确指出year_course_id
表中不存在students
列。
创建它以解决问题。
指定
时class Student < ActiveRecord::Base
belongs_to :year_course
end
您需要在引用year_course_id
表的students
表中添加year_courses
字段。
<强>更新强>
以下是如何通过生成迁移在year_course_id
表中添加students
列的方法:
rails generate migration AddYearCourseRefToStudents year_course:references
此次运行后rake db:migrate
答案 1 :(得分:1)
Kirti的答案是正确的,你肯定需要在相应的引用模型中有一个id列,但是,如果你已经有了这个但仍然得到错误(就像我自己),这就是我如何解决它:
我发现我发现我正在尝试将不同的名称委托给我的模型中的列关联,这种情况因为某些原因而绊倒了。也就是说,我有:
has_many :document_doc_types, as: :doc_types
和Rails发生了类似的错误。删除'as:doc_types'部分后,一切都很顺利。所以,这可以按预期工作:
has_many :document_doc_types
希望这有帮助。