2013-04-16 60 views
0

我有一個有密碼屬性的模型。請求有效載荷中的密碼屬性如下所示:如何在包含對象的模型屬性上設置Backbone.Validation驗證?

loginId: "yourId", 
password: {password: yourpassword} 

如何在使用Backbone.validation時對此進行驗證?

我試圖做的事:

validation: { 
    loginId: { 
     required: true, 
     msg: 'Please Enter a Login ID.' 
    }, 
    password: { 
     required: true, 
     msg: 'Please Enter a Password.' 
    } 
} 

然而,我的密碼總是驗證失敗。我認爲這是因爲代碼無法檢查密碼屬性散列內的密碼屬性。你知道我怎樣才能形成這種驗證工作正常嗎?

謝謝!

回答

0

我能夠利用該模型內定義驗證函數來實現:

validation: { 
    loginId: { 
     required: true, 
     msg: 'Please Enter a Login ID.' 
    }, 
    password: function(value, attr, computedState) { 
     if(!value || !value.get('password')) { 
      return 'Please enter a password.'; 
     } 
    { 
}, 
default: function(){ 
    return { 
     "password" : new Backbone.Model(), 
    }; 
}, 

我必須指定一個默認的模型,因爲模型上的密碼屬性實際上是服務器上的密碼模式,所以你需要爲初學者提供一個空白模型。我還必須確保我的視圖中的綁定設置正確。

相關問題