鉴于此json的回应:
{"username":null,"errors":{"password":["is required"],"username":["is required","is too short","is invalid"],"email":["is required","is invalid"]}}
我想呈现每个属性的第一条错误消息。 Ember正确地选择了错误,我可以在Handlebars模板中解析它们,例如:
<div {{bind-attr class='errors.email:error'}}>
<label>Email Address</label>
{{view Ember.TextField type='email' valueBinding='model.email' placeholder='Email Address'}}
<small class='below'>{{errors.email}}</small>
</div>
但{{errors.email}}
呈现[object Object]
或其中众多。添加.[0]
或firstObject
会将此减少为仅呈现[object Object]
一次,但它不会解析正确的错误消息。
答案 0 :(得分:0)
江户,看起来它运作正常。
答案 1 :(得分:0)
使用ActiveModelAdapter时,错误消息会自动与属性/消息配对。正如@ kingpin2k在他的要点中解释的那样,errors.email.firstObject
将获得第一个对象,您将需要消息属性。
我创建了这个助手,让它干涸了一下:
Ember.Handlebars.helper('error', function(context) {
if(context && context.length)
return context[0].message;
});
在你的hbs模板中使用它:
{{error errors.email}}