我在某些模型之间有has_many :through
关联,用于确定哪些数据集在某些信息中心上可见。
class Dashboard < ActiveRecord::Base
has_many :dashboard_datasets
has_many :datasets, :through => :dashboard_datasets
end
class DashboardDataaset < ActiveRecord::Base
belongs_to :dashboard
belongs_to :dataset
end
class Dataset < ActiveRecord::Base
has_many :dashboard_datasets
has_many :dashboards, :through => :dashboard_datasets
end
创建新Dashboard
的表单会有一组名为dataset_ids[]
的简单复选框,以便您选择我想要显示的预先存在的数据集仪表板。
class DashboardForm < Reform::Form
model: :dashboard
property :name
property :description
collection :dataset_ids
end
到目前为止,这么简单......
但是,我现在希望在联接表中添加额外的关联,以确定&#39;布局&#39;应该用于该给定仪表板上的该数据集。即网格,表格,列表。等
class Layout < ActiveRecord::Base
has_many :dashboard_datasets
end
class DashboardDataaset < ActiveRecord::Base
belongs_to :dashboard
belongs_to :dataset
belongs_to :layout
end
我现在想调整我的仪表板表单,这样除了复选框之外,对于所选的每个数据集复选框,还有一个选择框供我选择要在此给定关联上使用的布局。
我从哪里开始?展开表单对象上的collection
以更丰富并包含更多信息?
非常感谢任何建议。
答案 0 :(得分:0)
关键信息包括: