控制器/新客户
actions: {
addInfo: function() {
var name = this.get('name');
var e_mail = this.get('e-address');
var emoney = this.get('e-money');
var newCustomer = this.store.createRecord('customers', {
name : name,
email : e_mail,
emoney : emoney
});
newCustomer.save();
alert("You're added");
}
型号/客户.js
import DS from 'ember-data';
export default DS.Model.extend({
name:DS.attr('string'),
email:DS.attr('string'),
emoney:DS.attr('number'),
rev: attr('string')
});
templates/new-customer.hbs
<form class="form-horizontal">
<div class="form-group control-group error">
<label class="control-label" for="inputError">Name</label>
{{input type="text" class="form-control" value=name placeholder = "Enter your name" size="15"}}
</div>
<div class="form-group">
<label>Email Address</label>
{{textarea type="text" class="form-control" value=e-address placeholder = "Enter your Email Address"}}
</div>
<div class="form-group">
<label>E-Money</label>
{{input type="number" class="form-control" value=e-money}}
</div>
<button {{action 'addInfo'}}type="button" class="btn btn-primary">Submit !!</button>
</form>
我是不是错过了什么?当我点击提交按钮时在控制台上出现的错误是:
未能加载资源:服务器的响应状态为404(未找到)vendor.js:27458 Ember数据请求POST/客户返回404有效负载(text/html;charset=utf-8)无法POST/客户
错误在AdapterError(http://localhost:4200/assets/vendor.js:83957:16)在Class.handleResponse(http://localhost:4200/assets/vendor.js:85238:14)在ajaxError(http://localhost:4200/assets/vendor.js:85736:25)在Class.hash.error(http://localhost:4200/assets/vendor.js:85310:23)着火了(http://localhost:4200/assets/vendor.js:3637:31)在Object.fireWith〔as rejectWith〕(http://localhost:4200/assets/vendor.js:3767:7)完成时(http://localhost:4200/assets/vendor.js:9576:14)在XMLHttpRequest。(http://localhost:4200/assets/vendor.js:9816:9)defaultDispatch@vendor.js:27458
看起来Ember Data工作正常,但您的API服务器没有正确运行或配置。
newCustomer.save();
试图将记录保存到您的API,错误解释了确切的问题:
Failed to load resource: the server responded with a status of 404
(Not Found) vendor.js:27458 Ember Data Request POST /customers
returned a 404 Payload (text/html; charset=utf-8) Cannot POST /customers
尝试在API上将POST
数据/customers
导致服务器上出现404。