Rails主动管理员免费搜索选择元素

Baz*_*nga 1 ruby gem ruby-on-rails

我正在使用主动管理宝石.

我有与user_id有关系的问题表,当我想添加选择元素显示大量用户的新问题时,有一种方法可以将此选择元素与用户名的搜索输入一起使用吗?

ActiveAdmin.register Question do

  permit_params :difficulty, :title, :user

  form do |f|
    actions

    inputs 'Question Details' do
      input :user, :as => :select, :collection => User.all

      input :difficulty, as: :select, collection: [1,2,3,4]
      input :title

    end

    actions
  end


end
Run Code Online (Sandbox Code Playgroud)

Rob*_*Rob 5

您可以使用javascript插件,我完全推荐选择它会动态地将常规表单选择转换为可搜索的选择,只需简单的Javascript调用.

你可以在这里查看一些演示:http: //harvesthq.github.io/chosen/

您可以通过将选定的rails gem 添加到Gemfile来将其集成到activeadmin中

gem 'chosen-rails'
Run Code Online (Sandbox Code Playgroud)

然后将javascript添加到您的 app/assets/javascripts/active_admin.js.coffee

#= require chosen-jquery
Run Code Online (Sandbox Code Playgroud)

将css添加到您的 app/assets/stylesheets/active_admin.scss

@import "chosen"
Run Code Online (Sandbox Code Playgroud)

只需添加以下内容,即可将其添加到所有选择输入中 app/assets/javascripts/active_admin.js.coffee

$ -> 
  $("#active_admin_content select").chosen()
Run Code Online (Sandbox Code Playgroud)

您还可以通过向活动管理员输入添加类,并仅将具有特定类的选项作为目标来限制某些选择输入 chosen-select