在ember数据中建模没有id的对象

时间:2013-07-25 05:36:31

标签: ember.js ember-data

我正在为会计部门构建仪表板应用程序。

用户将选择一个月,并查看当月符合特定条件的所有公司。路线将是

/:month_id                         a summary page
/:month_id/companies               more details about each company
/:month_id/companies/:company_id   all details about a single company

理想情况下,我有一个month模型hasMany company模型。唯一的问题是,公司将在几个月内出现。

如果我错了,请纠正我,但这是否意味着如果公司已经在商店,当要求新的月份时,它将从商店而不是从服务器获取该公司的数据?每个月的数据都不同,所以这对我不起作用。

我想在这个应用程序中,每个公司的id都是他们的正常,整数id加上所选月份。因此,解决这个问题的方法之一就是给每个公司一个像'15-Mar-2013'这样的ID。

或者,我可以通过原始阵列上的raw和do转换传递每个月的companies数据。但问题是,我必须计算公司的总量(除了整个月),将这两件事分开是很好的。如果我有一个完全独立的公司模型,我可以在模型中去城镇:

App.Company = DS.Model.extend({
    month: DS.belongsTo('App.Month'),
    name: DS.attr('string'),
    contracts: DS.hasMany('App.Contract'),

    totalRevenue: function() {
        return this.get('contracts')
            .filterProperty('type', 'newSetup')
            .getEach('feeChange').reduce(function(accum, item) {
                return accum + item;
            }, 0);
    }.property('contracts.@each.feeChange'),

    ...additional aggregation functions
});

您怎么看?

1 个答案:

答案 0 :(得分:0)

这几个月拥有公司对我来说没有任何意义,这是你month[1]->[N]company关系所表明的。

您想要说的是,您正在寻找具有一个月内发生的特定标准的所有公司。选择的月份只是搜索条件的一部分。