如何在Rails Active Admin表单中配置含自由输入的下拉字段
实现Active Admin可输入的下拉选择字段需求
当然可以实现这个需求!Active Admin默认集成的Select2组件正好支持这种「带预设选项的可输入下拉框」功能,不需要额外安装第三方gem,只需要调整一下表单输入的配置即可。
具体操作步骤:
更新你的
admin/model.rb中的表单输入代码:f.input :field_example, as: :select, collection: LIST_OF_OPTIONS, prompt: true, input_html: { data: { select2: { tags: true } } }保持
config/initializers/active_admin_constants.rb里的LIST_OF_OPTIONS定义不变:LIST_OF_OPTIONS = ["option1","option2", "option3"]
功能细节说明:
- 开启
tags: true参数后,用户既可以从预设的option1、option2、option3选项中选择,也可以直接在下拉框内输入任意自定义字符串。 - 用户输入的自定义内容不会自动添加到后续表单的选项列表里——Select2的
tags功能仅支持临时输入,不会修改你预先定义的LIST_OF_OPTIONS集合,完全符合你的需求。
如果你的Active Admin版本较旧(比如低于2.0版本),可能需要微调data-select2的配置格式,但核心逻辑一致,都是借助Select2的tags功能实现可输入下拉。
内容的提问来源于stack exchange,提问作者Mathieu
相关产品推荐
相关产品推荐

