首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未加载DjangoRESTAdapter数据

未加载DjangoRESTAdapter数据
EN

Stack Overflow用户
提问于 2014-09-01 21:50:01
回答 1查看 54关注 0票数 0

我对Ember非常陌生,所以希望我只是在做一些愚蠢的事情,但是我遇到了很多随机问题,数据显示不正确,我现在在Ember Debugger中看到,直到我到达特定的模型数据端点,我的数据才会存在。例如,我有一个模板来显示所有产品,如下所示:

代码语言:javascript
复制
App.ProductsRoute = Ember.Route.extend({
    model: function() {
        return this.store.find('product');
    }
});

控制员:

代码语言:javascript
复制
App.ProductsController = Ember.ArrayController.extend({
    itemController: 'product'
});

模板:

代码语言:javascript
复制
<script type="text/x-handlebars" data-template-name="products">
    <div class="row">
        {{#each}}
            {{name}}
        {{/each}}
    </div>
</script>

点击端点'/products‘一开始什么都不会显示,但是如果我转到'/products/1’,我可以在视图(和Ember调试器中)看到产品数据,然后如果我导航回'/products‘,那么特定产品的数据(但没有其他数据)会正确显示。所以我对自己做错了什么感到非常困惑。如标题所示,如果这有助于缩小范围,我将使用DjangoRESTAdapter,这也是我的app.js

代码语言:javascript
复制
window.App = Ember.Application.create({});
window.api_location = 'http://localhost:8000/api';


App.ApplicationAdapter = DS.DjangoRESTAdapter.extend({
    host: api_location,
    pathForType: function(type) {
        return Ember.String.underscore(type);
    }
});
App.ApplicationSerializer = DS.DjangoRESTSerializer.extend({
});

App.Store = DS.Store.extend();

预先感谢您的帮助,并让我知道其他代码片段是否会有帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-01 23:27:56

好吧,我终于明白了:这是分页的问题。我不知道我们已经为Django REST Api设置了分页,所以它不是返回对象列表,而是返回结果对象,产品列表隐藏在一个“结果”属性中。因此,在我说服其他开发人员关闭分页之前,我可以修改我的所有查询:

代码语言:javascript
复制
this.store.find('product', {page_size:0});

若要覆盖默认页大小,请执行以下操作。

编辑:我还在尝试修改服务器端的json响应,而不是在这个库:ember中使用djangorest适配器。希望这能节省一些人的挖掘..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25613286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档