selecta,ajax不显示结果

时间:2017-11-23 11:32:13

标签: ruby-on-rails ajax jquery-select2

我正在尝试使用select2和ajax检索供应商。 所以这是我的js代码,

 $(document).ready(function(){
  $('.supplier_suggestion').select2({
    placeholder: 'Search for supplier',
    ajax: {
      type: 'GET',
      url: '/search_supplier',
      delay: 250,
      data: function(params){
        var query = {
          q: params.term
        }
        return query;
      },
      dataType: 'json',
      processResults: function (data) {
        return {
          results: $.map(data, function (item) {
            return {
              text: item.text,
              id: item.id
            }
          })
        };
      }
    }
  });});

我在我的haml(上面称为js文件)

中得到了这个
%b.tosca XXX
        .input-field
          = f.text_field :supplier_name, class: "supplier_suggestion browser-default"
          = error_for @ro_nonreg, :supplier_name

和这个ini search_controller.rb

def search_supplier
    search = params[:q]
    search_pattern = '%' + search.downcase + '%'
    result_raw = Supplier.where('lower(supplier_name) LIKE ? OR lower(shadow_id) LIKE ?', search_pattern, search_pattern)
    result = []
    result_raw.each do |data|
      data_hash = {}
      data_hash[:id] = data.shadow_id
      data_hash[:text] = data.supplier_name
      result << data_hash
    end

    render_secure_json supplier: result
  end

我在这里缺少什么?

0 个答案:

没有答案