2013-02-12 18 views
1

如果父對象無效,我正在寫入Ember.TextField的擴展名來更改文本字段的類。我正在使用ember-validations library對我的ember-data對象進行驗證。我現在有這個工作,但我希望能夠做到這一點,而不必傳遞validationMethod變量。我怎樣才能得到從視圖內傳遞到valueBinding的文本字符串?獲取傳遞給Ember.TextField中的valueBinding的文本值(ember驗證)

address.js.coffee

App.Address = DS.Model.extend(Ember.Validations, 
    street_1: DS.attr('string') 
    street_2: DS.attr('string') 
    ... 

    validations: 
    street_1: 
     presence: true 
) 

validated_text_field.js.coffee

Ember.ValidatedTextField = Ember.TextField.extend(
    validationMethod: null 
    classNameBindings: 'error' 

    focusOut: -> 
    object = @get('controller').get('content') 
    object.validateProperty(@get('validationMethod')) 

    error: (-> 
    object = @get('controller').get('content') 
    if object.get("isValid") 
     return false 
    else 
     error_keys = object.get("validationErrors." + @get('validationMethod') + ".keys") 
     if error_keys 
     return error_keys.length > 0 
     else 
     return false 
).property('controller.content.isValid') 
) 

edit.handlebars

{{view Ember.ValidatedTextField validationMethod="street_1" valueBinding="street_1" id="street_1" placeholder="Street 1" required="true"}} 
... 

回答

相關問題