【发布时间】:2012-12-13 12:25:38
【问题描述】:
我正在尝试在 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
但我不知道在控制器的“新建”和“创建”部分中做什么或如何构造表单。
任何见解将不胜感激。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 activerecord nested-forms nested-attributes