anchor.diff:          predicate_select.data['predicates'] = predicates
   
       init_select2: (container) ->
  -      if Select2?
  -        container.find('select.ransack_predicate').select2
  -          width: '160px'
  -          formatNoMatches: (term) ->
  -            "Select a field first"
  -
  -        container.find('select.ransack_attribute').select2
  -          width: '230px'
  -          placeholder: "Select a Field"
  -          allowClear: true
  -          formatSelection: (object, container) ->
  -            # Return 'Model: field' unless column is on root model
  -            if !object.element || $(object.element).data('root-model')
  +      container.find('select.ransack_predicate').select2
  +        width: '160px'
  +        formatNoMatches: (term) ->
  +          "Select a field first"
  +
  +      container.find('select.ransack_attribute').select2
  +        width: '230px'
  +        placeholder: "Select a Field"
  +        allowClear: true
  +        formatSelection: (object, container) ->
  +          # Return 'Model: field' unless column is on root model
  +          if !object.element || $(object.element).data('root-model')
  +            object.text
  +          else
  +            group_label = $(object.element).parent().attr('label')
  +            # Avoid labels like 'Contact: Contact'
  +            if group_label == object.text
                 object.text
  +            else if group_label?
  +              group_label + ': ' + object.text
               else
  -              group_label = $(object.element).parent().attr('label')
  -              # Avoid labels like 'Contact: Contact'
  -              if group_label == object.text
  -                object.text
  -              else if group_label?
  -                group_label + ': ' + object.text
  -              else
  -                object.text
  -
  -        @element.find('select.ransack_sort').select2
  -          width: '230px'
  -          placeholder: "Select a Field"
  +              object.text
  +
  +      @element.find('select.ransack_sort').select2
  +        width: '230px'
  +        placeholder: "Select a Field"
   
       init_button_group_select: (containers) ->
         containers.find('select.ransack_combinator, select.ransack_sort_order').button_group_select()
  
positive.code:       # Hide all query inputs
        inputs.hide()
  
        # Find newly created input and setup Select2
        multi_query = @element.find('#' + multi_id)
        multi_query.select2
          tags: []
          tokenSeparators: [',']
          formatNoMatches: (t) ->
            "Add a search term"
        multi_query.select2('val', values)
  
      add_query_input: (base_input, base_name, id, value) ->
        base_input.after $('<input name="'+base_name+'['+id+'][value]" '+
  
negative.code: 
        # Handle regular columns
        else
          if Select2?
            predicate_select2 = @element.find("#s2id_#{base_id}p")
            predicate_select2.select2("enable")
  
            # If Select2 is on query input, remove and set defaults
            if (query_select2 = @element.find("#s2id_#{base_id}v_0_value")).length > 0
              query_input.select2('destroy')
              query_input.val('')
              previous_val = ''
            else
              previous_val = predicate_select.val()
  
          # Build array of supported predicates
          available = predicate_select.data['predicates']
  