Formtastic/ActiveAdmin为选择输入设置默认值

Mor*_*war 5 ruby-on-rails formtastic activeadmin

我正在使用ActiveAdmin中的自定义表单,我决定使用它来添加/编辑以遵循DRY原则,因此如果用户使用它来编辑记录(这不是数据库记录),我需要填充它.

所以问题是我有这些输入:

f.input :model_id, as: :select, collection: Model.all.map { |m| [m.id.to_s + ' - ' + m.name, m.id] }, input_html: { required: true }
f.input :enabled, as: :select, collection: {'Yes': true, 'No': false}, input_html: { required: true }
Run Code Online (Sandbox Code Playgroud)

如果我正在使用表单进行编辑,我想为它们设置一个默认值,但我不知道如何因为每个人都在谈论使用belongs_to或DB关系,ActiveAdmin并将为你处理默认值isn'适用于我的情况,因为它不是一个DB记录,我没有ActiveRecord Model它.

即使是官方的文档Formtastic并没有帮助.

Mor*_*war 7

我想出了如何做到这一点,这是任何面临同样问题的人的答案:

f.input :model_id, collection: Model.all.map { |m| [m.id.to_s + ' - ' + m.name, m.id] }, selected: object.model_id
f.input :enabled, collection: { 'Yes': true, 'No': false }, selected: object.enabled
Run Code Online (Sandbox Code Playgroud)