我有茧创建关联子的形式,这些形式之一有projects
和codes
/ view (in slim format)
.nested-fields.subform.project-subform
= link_to_remove_association "×", f
#project-code-container
.form_group
= f.label :project_id, "Project"
= f.select(:project_id,
@current_projects.map { |project| [project.name, project.id] },
{},
{ onChange: "updateCodes(this)" },
)
.form_group
= f.label :project_code_id, "Code"
= f.select(:project_code_id, @current_project_codes[1])
第二个选择应该显示基于所选项目的索引编号列表。所以,如果被选中的项目3
,那么代码的选项应该是@current_project_codes[3]
当我击上提交验证错误,形式重新装载已经填写了(像一个正常的轨道形成)以前的数据。不过,我不知道如何告诉project_code
选择它应该加载哪些选项。由于这是一个茧型形状,我没有像@project
对象访问数据。
我需要弄清楚project
选择什么,这样我就可以显示正确的代码。
验证错误/重装,我怎样才能得到一个茧对象的数据?
附:我挣扎来定义这个问题,如果你有关于如何使我的问题更加清楚,请让我知道的想法。
感谢@arieljuod
f.object
给窗体的对象,其数据
对于我的具体问题,这是一个允许选择与任何预先保存的数据自动填充线:
f.select(
:project_code_id,
@current_project_codes[f.object.project_id || @current_projects.first.id]
)