 
     _showResultsPopover: _.debounce((query) ->
       @matcher.resultsForString query, (results) =>
-        models = _.pluck(results, "model")
+        models = _.pluck(results, 'model')
         collection = new Thorax.Collection(models)
 
         # Don't show tokens in the results collection that already exist in the token field

#= require ./token_field
#= require ./collection_list_popover
namespace 'Exo.Views', (exports) ->
  class exports.AutocompleteTokenField extends Exo.Views.TokenField
    resultsPopoverClass: Exo.Views.CollectionListPopover
    showPopoverOnEmpty: false

    minInputValueLength: 1

    # Allow tokens for queries not in the collection. Useful for creating.
    allowFallbackTokens: true
    showAllOnDownArrow: false

    # Attribute on models to search.
    filterAttribute: "name"

    resultsPopoverOptions: null

    initialize: (options = {}) ->
      super

      @resultsPopover = options.resultsPopover || new @resultsPopoverClass(
        _.extend({
          appendTo: @$el
          target: @$el

          displayAttr: @_itemDisplayText(model)
        }, model.attributes

      @resultsPopover.on 'item:selected', (model) ->
        model = if _.isString(model) then @_buildFallbackToken(model) else model
        @insertToken(model)
        @$input?.val('')
      , this

      @matcher = new Exo.Matcher
        filterAttribute: @filterAttribute

      @on 'destroyed', @_destroyed
      @on 'keypress', =>
        @inputPlaceholder.style.display = if @_shouldShowPlaceholder() then 'block' else 'none'

      this


    #-----------------------------------------------------------------------------
    # Instance Methods
    #-----------------------------------------------------------------------------

    setSource: (source) ->
      @matcher.setSource(source)
