Backbone.js 在主干关联上实现多对多关系的可扩展方法?

Backbone.js 在主干关联上实现多对多关系的可扩展方法?,backbone.js,Backbone.js,对于基于主干关联的多对多关系,是否有一种经过测试且可扩展的方法?我一直在寻找主干关系和主干JJRelational作为替代,但出于其他原因和限制,我希望保留主干关联 我有两个模型(项目和位置),分别有各自的集合,每个模型彼此之间有很多关系。一个项目可以有多个位置,一个位置可以承载多个项目 // Non-relevant statements have been left out var Project = Backbone.AssociatedModel.extend({ relat

对于基于主干关联的多对多关系,是否有一种经过测试且可扩展的方法?我一直在寻找主干关系和主干JJRelational作为替代,但出于其他原因和限制,我希望保留主干关联

我有两个模型(项目和位置),分别有各自的集合,每个模型彼此之间有很多关系。一个项目可以有多个位置,一个位置可以承载多个项目

// Non-relevant statements have been left out 

var Project = Backbone.AssociatedModel.extend({
    relations: [{
        type: Backbone.Many,
        key: 'locations',
        collectionType: Locations
    }],
    defaults: 


});

var Projects = Backbone.Collection.extend({
    model: Project
});

var Location = Backbone.AssociatedModel.extend({
    relations: [{
        type: Backbone.Many,
        key: 'projects',
        collectionType: Projects
    }]
});

var Locations = Backbone.Collection.extend({
    model: Location
});
如果不仅仅是关于如何以最具可扩展性和鲁棒性的方式解决问题的指针,我们更愿意将解决方案投入生产。(如果有影响,RESTAPI将在NodeJS/Express和MongoDB上实现)


Cheeers

出于价值考虑,我决定用一个平面嵌套结构实现关系,并在带有关系的模型中保留带有引用的数组。我相信主干关联和主干关系对于on-to-one和one-to-many关系是非常好的,但是对于更复杂的嵌套结构来说,实现“自制”的关系结构似乎更有效

实现映射到实体模型特定约束的可重用结构的灵活性以及对事件处理的更多控制使我得出了这一结论。我有大约25个模型和30个系列,其中有相当多的多对多关系

(需要指出的是,我对JavaScript和主干相当陌生,因此这可能会对决策产生影响)