断言失败:没有找到'0'Django REST和Ember Adapter的模型

时间:2013-11-22 20:52:04

标签: python ember.js ember-data django-rest-framework

我收到以下代码的错误:

App.SearchRoute = Ember.Route.extend({
    model: function(){
        return this.store.find('cabinets')
    }
});
App.SearchAdapter = DS.DjangoRESTAdapter.extend({
   namespace: 'rest_framework'
});

我创建了模型,但没有正确格式化JSON,我不确定我做错了什么。

此外,如果我改为使用此代码:

App.Store = DS.DjangoRESTStore.extend({
 adapter: DS.DjangoRESTAdapter.create({
    namespace: "rest_framework"
 }),
 revision: 12
 });

我在extend方法上遇到错误....

这是我从测试中返回的JSON。

0: {id:1, cabinet_name:HR Department, cabinet_security:1, status:1}

2 个答案:

答案 0 :(得分:0)

您使用的是哪种版本的Ember Data?如果它是1.0,则需要使用此处描述的版本(https://github.com/emberjs/data/blob/master/TRANSITION.md)而不是像这样定义商店。我很确定你原来是在尝试这个。另外,你的JSON真的没有引用人力资源部门的报价吗?

App.CabinetAdapter = DS.DjangoRESTAdapter.extend({
  namespace: 'rest_framework'
});

答案 1 :(得分:0)

以下是chrome给我看的内容

DEBUG: ------------------------------- ember.js:3231
DEBUG: Ember      : 1.3.0-beta.1+canary.628071a4 ember.js:3231
DEBUG: Ember Data : 1.0.0-beta.4+canary.e7996c4d ember.js:3231
DEBUG: Handlebars : 1.0.0 ember.js:3231
DEBUG: jQuery     : 1.10.2 ember.js:3231
DEBUG: ------------------------------- 

哦,是的,有引号我没注意到那些没有从调试器复制过来。

以下是我列出的内容,现在出于某种原因可以使用

DS.DjangoRESTSerializer = DS.RESTSerializer.extend();
DS.DjangoRESTAdapter = DS.RESTAdapter.extend({
      defaultSerializer: "DS/djangoREST"
});

App.Store = DS.Store.extend({
        revision: 12,
        adapter: DS.DjangoRESTAdapter.create()
});
App.SearchAdapter = DS.DjangoRESTAdapter.extend({
    namespace: 'rest_framework'
});