0

我正在寻找使用backbone.js 构建我的网站。我的 API 返回一个指向其他各种资源的 url(不是严格的 HAL,否则可能没问题),但我在创建聚合页面时遇到了一点困难(例如,包含来自多个模型/集合的内容的页面。

例如,我有一个显示交易列表的“交易”页面。每个交易显示该特定交易的门票数量。在页面渲染期间执行获取是不好的做法,Backbone-Relational看起来很有希望,但我不确定如何将它与对相关集合的 url 引用一起使用。抱歉,如果这是一个愚蠢的问题,我是这些框架的新手。

“交易”的部分示例:

{
    "_id": "526a6f520188d9c0e300002a",
    "name": "test",
    "description": "",
    "isPublished": false,
    "images": [],
    "dealType": "group",
    "tickets": "http://[host]/1/deals/526a6f520188d9c0e300002a/tickets"
}

任何建议将不胜感激!

4

1 回答 1

1

看起来这就是你要找的东西。

var DealModel = Backbone.Model.extend({
    initialize:function(){
        var self = this;
        self.ticketsCollection = new (Backbone.Collection.extend({
            url:self.get('tickets')
        }))

       self.listenTo(self.ticketCollection, 'all', function (sourceEventName) {
          self.trigger.apply(self, ['ticket:' + sourceEventName].concat(_.rest(arguments)));
       })

        this.ticketsCollection.fetch(); //this can be done only when you want tickets details
    }
})

var DealCollection = Backbone.Collection.extend({
    model:DealModel,
    url:'urltoDeals'
})


var dealCollection = new DealCollection();
dealCollection.fetch();
于 2013-10-26T00:54:28.730 回答