1
在閱讀Handling Errors with Ember Data和其他許多關於如何解決Ember JS錯誤處理的技巧和竅門後,我仍然無法弄清楚我的代碼出了什麼問題。斷言失敗:`AdapterError`預計json-api格式錯誤數組
對於初學者來說,我有一個用戶模型,像這樣:
import DS from 'ember-data';
export default DS.Model.extend({
firstName: DS.attr('string'),
surName: DS.attr('string'),
email: DS.attr('string'),
plainPassword: DS.attr('string')
});
很顯然,我不是從服務器返回一個密碼,但我相信它需要在模型中,從報名表發送。無論如何,繼續。
表單模板看起來是這樣的:
<!-- start Register -->
<div class="container-fluid">
<form name="form_register" {{action 'submit' on="submit"}} class="form-register" novalidate="novalidate">
<div class="col-md">
<label class="el-input-wrap">
First Name
{{input class="el-input" placeholder='firstName' value=model.firstName}}
</label>
<label class="el-input-wrap">
Last Name
{{input class="el-input" placeholder='surName' value=model.surName}}
</label>
</div>
<div class="col-md">
<label class="el-input-wrap">
Email
{{input class="el-input" placeholder='email' value=model.email}}
</label>
<label class="el-input-wrap">
Password
{{input class="el-input" placeholder='password' value=model.plainPassword type='password'}}
</label>
</div>
<div class="col">
<label class="el-checkbox">
By registering I agree to the terms and conditions
</label>
</div>
<button type="submit" class="el-btn mod-full-w">REGISTER</button>
</form>
</div>
<!-- end Register -->
接下來我有辦理登記表格登記控制器:
import Ember from 'ember';
export default Ember.Controller.extend({
actions: {
cancel() {
this.get('model').deleteRecord();
return true;
},
submit() {
var user = this.get('model');
user.save().then(
() => this.transitionToRoute('register')
).catch((adapterError) => {
console.log(adapterError);
});
}
}
});
在這裏,我試圖CONSOLE.LOG錯誤,錯誤。 firstName等等。但沒有錯誤顯示。
adapterError告訴我錯誤格式不是JSON API格式。但是,從我所看到的,那就是:
{
"errors": {
"source": {
"pointer": "user\/email"
},
"detail": "user.email.not_blank"
}
}
最後,我正在使用的適配器/ application.js中的RESTAdapter:
import DS from 'ember-data';
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin';
export default DS.RESTAdapter.extend(DataAdapterMixin, {
namespace: 'app_dev.php/api',
authorizer: 'authorizer:token', //or authorizer: 'authorizer:jwt'
});
對於我的生活,我想不出什麼是錯的。我非常感謝任何幫助或指示。謝謝。