DockYardのember-validations mixin を試しています。次のような NewUser オブジェクトがあります。
App.NewUser = Ember.Object.extend(Ember.Validations.Mixin, {
name: null,
email: null,
password: null,
password_confirmation: null,
validations: {
name: {
presence: true
}
},
watchChanges: function() {
// Live validations...
this.validate();
}.observes("name", "email", "password", "password_confirmation")
});
submit
そして、メソッドを含むコントローラーがあります。
App.JoinController = Ember.ObjectController.extend({
submit: function() {
// Run validations again
// Send to server if okay
this.get("model").validate();
}
});
モデルをビューにリンクするルート:
App.JoinRoute = Ember.Route.extend({
model: function() {
return App.NewUser.create();
}
});
(これは、送信メソッドをコントローラーに転送するビューでもあります)
私が理解していないのは、コントローラーからモデルオブジェクトに戻って実行する方法.validate()
です。のようなコントローラーのサブミットメソッドで何かできるはずですが、うまくいきthis.get("model").validate()
ません。これを機能させるにはどうすればよいですか?