无法在 ajax search_select 的 Activeadmin Addons 插件中设置默认值
Unable to set default value in Activeadmin Addons Plugin for ajax search_select
我在 rails 活动管理员中使用 activeadmin_addons 插件来使用 ajax 填充 select 下拉列表,为此我使用了 Select2(search_select activeadmin_addons)。加载项工作正常,但在编辑表单场景的情况下加载活动管理表单时,我无法为 select 下拉列表设置默认值。
终于找到更好的选择了。我使用 Activeadmin::AjaxFilter gem,使用 ajax 填充下拉列表,它还提供了在编辑时设置字段的默认值。
上面gem的文档不好,所以我会给你一些提示:
对于 Ajax 请求响应应该是这样的:
[{"id":"hello","manufacturer":"hello"}]
这里"id"是你在"value_field"(选项)和
中设置的
这里"manufacturer"是你在"search_fields"(选项)里设置的。
在活动管理员的编辑表单中设置默认值的示例。
form do |f|
f.semantic_errors # shows errors on :base
f.object.updated_by = current_user.id
f.object.virtual_manufacturer = f.object.medicine_manufacturer.try(:id) unless f.object.new_record?
f.inputs "Medicine" do
input :strength
input :virtual_manufacturer, label: "Manufacturer", as: :ajax_select, data: {
url: autocomplete_medicinemaster_manufacturer_admin_medicinemasters_path,
search_fields: [:manufacturer],
}
end
这里我有 virtual_manufacturer 的预填充值。加载表单编辑表单后,会自动命中api,默认值为
这个 gem 是在活动管理 select 下拉列表中自动完成的不错选择。
我在 rails 活动管理员中使用 activeadmin_addons 插件来使用 ajax 填充 select 下拉列表,为此我使用了 Select2(search_select activeadmin_addons)。加载项工作正常,但在编辑表单场景的情况下加载活动管理表单时,我无法为 select 下拉列表设置默认值。
终于找到更好的选择了。我使用 Activeadmin::AjaxFilter gem,使用 ajax 填充下拉列表,它还提供了在编辑时设置字段的默认值。
上面gem的文档不好,所以我会给你一些提示:
对于 Ajax 请求响应应该是这样的:
[{"id":"hello","manufacturer":"hello"}]
这里"id"是你在"value_field"(选项)和
中设置的这里"manufacturer"是你在"search_fields"(选项)里设置的。
在活动管理员的编辑表单中设置默认值的示例。
form do |f|
f.semantic_errors # shows errors on :base
f.object.updated_by = current_user.id
f.object.virtual_manufacturer = f.object.medicine_manufacturer.try(:id) unless f.object.new_record?
f.inputs "Medicine" do
input :strength
input :virtual_manufacturer, label: "Manufacturer", as: :ajax_select, data: {
url: autocomplete_medicinemaster_manufacturer_admin_medicinemasters_path,
search_fields: [:manufacturer],
}
end
这里我有 virtual_manufacturer 的预填充值。加载表单编辑表单后,会自动命中api,默认值为
这个 gem 是在活动管理 select 下拉列表中自动完成的不错选择。