我正在尝试在 rails 中构建一个相当复杂的嵌套表单并且被卡住了。
基本上,我有三个模型 - Applicant
,DataPoint
,ApplicantDataPointValue
。
用户可以创建一个新的DataPoint
,给它一个名字(“性别”等)选择它的类型(“字符串”,“整数”等)。类型决定了数据最终将保存在ApplicantDataPointValue
表中的哪一列。
然后我希望用户在创建新的Applicant
时能够将每个值添加DataPoint
到ApplicantDataPointValue
表中
我的模型如下所示:
申请人:
class Applicant < ActiveRecord::Base
has_many :applicant_data_point_values, dependent: :destroy
has_many :data_points, :through => :applicant_data_point_values
accepts_nested_attributes_for :data_points
accepts_nested_attributes_for :applicant_data_point_values
attr_accessible :data_points_attributes, :applicant_data_point_values_attributes
end
数据点:
class DataPoint < ActiveRecord::Base
has_many :applicant_data_point_values
has_many :applicants, :through => :applicant_data_point_values
accepts_nested_attributes_for :applicant_data_point_values
end
申请人数据点值:
class ApplicantDataPointValue < ActiveRecord::Base
belongs_to :data_point
belongs_to :applicant
end
但是我不知道在控制器的“新”和“创建”部分中做什么或如何构造表单。
任何见解将不胜感激。