       for model in models
         v = model.read?( @valueField ) || model.get(@valueField)
         d = model.read?( @displayField ) || model.get(@displayField)
+
+        if @maxDisplayLength and @maxDisplayLength > 0
+          d = _.str.truncate(d, @maxDisplayLength)
+
         selected = "selected" if @selected and v is @selected
         option = "<option #{ selected } value='#{ v }'>#{ d }</option>"
         @getInputElement().append( option )

      @populateOptions()
    else
      @collection?.trigger("reset")

  setValue: (value)->
    @currentValue = value
    Luca.core.Field::setValue.apply @, arguments

  beforeFetch: ()->
    @resetOptions()


      hash

  getInputElement: ()->
    @input ||= @$('select').eq(0)

