我正在尝试做一些crud应用程序 我的后端是Django Rest Framework前端我使用的是Emberjs
我无法执行发布请求我在此处获得不受支持的媒体错误是我的代码
//model js customer.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
company: DS.attr('string'),
title: DS.attr('string')
});
//route customer.js
import Route from '@ember/routing/route';
export default Route.extend({
model(params){
return Ember.RSVP.hash({
customers: this.store.findAll('customers'),
})
},
actions:{
saveCustomer(){
let customer = this.store.CreateRecord('customers',{
name: this.getProperties('name'),
company: this.getProperties('company'),
city: this.getProperties('cist'),
})
customer.save();
}
},
});
//template customers.hbs
<table>
<tr>
<th>Name</th>
<th>Company</th>
<th>City</th>
</tr>
{{#each customers as |customer|}}
<tr>
<td>{{customer.name}}</td>
<td>{{customer.company}}</td>
<td>{{customer.city}}</td>
</tr>
{{/each}}
</table>
{{#paper-form onSubmit=(route-action "saveCustomer") as |form|}}
<div class="layout-row">
<div class="layout-column flex-50">
{{form.input label="Full Name" value=name onChange=(action (mut name)) required=true}}
{{form.input label="company" value=company onChange=(action (mut company))}}
{{form.input label="city" value=city onChange=(action (mut city))}}
</div>
</div>
<div class="layout-row">
{{#form.submit-button raised=true primary=true}}Submit{{/form.submit-button}}
</div>
{{/paper-form}}
// adapter application.js
import DS from 'ember-data';
export default DS.RESTAdapter.extend({
namespace: 'api/v1',
host: 'http://localhost:8000'
});
&#13;
任何一个可以帮助摆脱这个的人..我正在使用我支持的django休息框架。我在帖子中尝试了我支持的代码它运行良好但是当我使用ember时我很高兴无法在客户端发布请求
答案 0 :(得分:2)
我的understanding是emberjs使用jsonapi.org请求/响应格式。看看DJA (Django REST Framework JSON API),它增加了Django REST Framework。
有一些活跃的PRs和enhancement issues与DJA一起实施一些更高级的JSON API功能,以防您遗漏某些内容....
答案 1 :(得分:1)
确保您的后端接受内容类型application/vnd.api+json
,您需要设置标题。