2011-06-16 6 views
1

ExtJSのモデル検証:日付(どのように)

Ext.define('User', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     {name: 'name',  type: 'string'}, 
     {name: 'age',  type: 'int'}, 
     {name: 'phone', type: 'string'}, 
     {name: 'gender', type: 'string'}, 
     {name: 'username', type: 'string'}, 
     {name: 'alive', type: 'boolean', defaultValue: true} 
    ], 

    validations: [ 
     {type: 'presence', field: 'age'}, 
     {type: 'length', field: 'name',  min: 2}, 
     {type: 'inclusion', field: 'gender', list: ['Male', 'Female']}, 
     {type: 'exclusion', field: 'username', list: ['Admin', 'Operator']}, 
     {type: 'format', field: 'username', matcher: /([a-z]+)[0-9]{2,3}/} 
    ] 
});

はのは、上記のコードは、誕生日のために「DOB」フィールドを含んでいましょうモデルで日付フィールドに検証を追加することについて移動する最良の方法です。どのように私はそれの検証を追加するつもりですか?

{type: 'format', field: 'dob', matcher: /([a-z]+)[0-9]{2,3}/}

が、日付を検証するために設計されています正規表現を使用します。

私の仮定は、私が使用するであろうということです。これを行うより良い方法はありますか?フォームの日付フィールドには、日付フィールドを強調表示する独自の検証メソッドが使用されています。モデルの日付フィールドのようなものはありますか?

答えて

2

)は、Ext.data.validations(シングルトン)にvalidateメソッドを追加

それはExt.data.Model.validate(での使用であろう。

ここで詳細を見つけるSRC

+0

を見てみましょう:http://stackoverflow.com/questions/7414115/how-to-add-a-custom-validation-rule-to-a-model-inを-sencha-touch – SuitedSloth