Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将关系视图转换为项目视图?_Javascript_Backbone.js_Backbone Relational - Fatal编程技术网

Javascript 将关系视图转换为项目视图?

Javascript 将关系视图转换为项目视图?,javascript,backbone.js,backbone-relational,Javascript,Backbone.js,Backbone Relational,更新我仍然不是100%,但我做了一把小提琴,它似乎工作得很好,我仍在测试它,看看是否有任何警告,但这似乎工作得很好,看起来我可以放下主干关系和深度模型:)我需要的是整个时间的复合视图,谢谢Derrick Bailey 我有很多球队和球员。继续结帐,看看更多我想做的事情,它会让我对我正在做的事情有一个更好的了解 var Relational = require('backbone.relational'); module.exports = TeamModel = Backbone.Relati

更新我仍然不是100%,但我做了一把小提琴,它似乎工作得很好,我仍在测试它,看看是否有任何警告,但这似乎工作得很好,看起来我可以放下主干关系和深度模型:)我需要的是整个时间的复合视图,谢谢Derrick Bailey

我有很多球队和球员。继续结帐,看看更多我想做的事情,它会让我对我正在做的事情有一个更好的了解

var Relational = require('backbone.relational');

module.exports = TeamModel = Backbone.RelationalModel.extend({
    relations: [{
        type: Backbone.HasMany,
        key: 'players',
        relatedModel: 'PlayerModel',
        collectionType: 'PlayersCollection',
        reverseRelation: {
            key: 'playsOn',
            includeInJSON: 'id'
        }
    }]
});
然后是玩家模型

module.exports = PlayerModel = Backbone.RelationalModel.extend({});
我基本上很好,我可以做这样的事情

var bulls   = new TeamModel({ name: 'bulls' });
var michael = new PlayerModel({ position: 'Point Guard', playsOn: bulls });
console.log( bulls.get( 'players' ).pluck( 'position' ) );
console.log( michael.get( 'playsOn' ).get( 'name' ) + ', ' + bulls.get( 'players' ).length );
我终于对主干关系有了一个简单的理解,但我不确定如何以我想要的方式使用木偶构建视图,即

<div class="team bulls">
    <div class="the-players">
        <div class="player michael"></div>
    </div>
</div>

<div class="team warriors">
    <div class="the-players">
        <div class="player steph"></div>
    </div>
</div>

我写了一个提琴,但是为了让所有的部件都能正常工作我有点困难,我不得不从头开始做,因为我的实际应用程序要大得多,而且是模块化的,所以这里是一个基本的想法

我只是尝试使用关系主干,这样我就可以在视图中有一个团队元素/视图,其中包含与该团队相关的玩家列表。我使用嵌套模型进行了良好的设置,但这在添加/更新玩家时造成了很多问题

另外,我已经成功地收集了一些球队和球员,将他们合并在一起,但这感觉很粗糙,每个人都说使用关系,所以我在这里,只是有些方面我不能理解,所以希望有人能指出:)

更新的FIDDLE我正在取得一些进展,我仍然不知道如何在这里应用关系数据库


编辑:我以前是这样做的,问题是为特定的团队更新集合,我可能会就此提出一个新问题,看看哪种解决方案更好,或者也许小提琴是一种好方法,我只是需要一种更好的更新和保存方法。

我的问题有意义吗,是否有人在集合中使用了集合?似乎这是没有人做的事情,我不知道为什么或者怎么做?另一个支持添加团队和球员的更新我希望这对其他人有所帮助。另外需要注意的是,我构建fiddle主干的方式。关系实际上有助于我的复合视图。。当我调用
this.collection=this.model.get('players')
时,似乎通过使用关系模型一切都很顺利,当我恢复到正常的主干模型时,我遇到了问题,因此我认为设置关系模型后,我不必做任何额外的工作。我不确定您的小提琴还缺少什么。它似乎非常符合您作为比较添加的“理想示例”。如果您已经找到了解决方案,请随时为您自己的问题添加答案。