我有一个名为User的类/模型(使用单表继承)有一个名为Student的子类(包括其他)
学生与'HomeAddress'有'has_one'关联,'HomeAddress'是'Place'的子类
我的模型设置:
class User < ActiveRecord::Base
end
class Student < User
has_one :home_address, :dependent => :destroy
accepts_nested_attributes_for :home_address
end
class Place < ActiveRecord::Base
end
class HomeAddress < Place
belongs_to :student
end
在我的学生控制器中,我正在尝试创建一个新的学生和相关的HomeAddress以传递到我的视图:
class StudentsController < ApplicationController
def new
@student = Student.new
@student.build_home_address
end
然而,我收到一个错误:
:uninitialized constant Student::HomeAddress
这个问题显然与 @ student.build_home_address 行有关,但我不明白为什么会导致此错误。我检查了所有命名约定(即模型,控制器,关联),并在我的应用程序中使用其他嵌套属性关系。使用STI子类的嵌套属性可能存在问题? (即HomeAddress)
如果您想查看其他任何代码,请与我们联系。 感谢。