Backbone.js 主干关系属于

Backbone.js 主干关系属于,backbone.js,backbone-relational,Backbone.js,Backbone Relational,如何使用主干和主干关系创建和使用归属(或多对一)关系?如果您的关系是,例如,一栋建筑有多个房间。房间属于建筑物: Building = Backbone.RelationalModel.extend({ relations: [ { type: 'HasMany', key: 'rooms', relatedModel: 'Room', reverseRelation: {

如何使用主干和主干关系创建和使用归属(或多对一)关系?

如果您的关系是,例如,一栋建筑有多个房间。房间属于建筑物:

Building = Backbone.RelationalModel.extend({
    relations: [
        {
            type: 'HasMany',
            key: 'rooms',
            relatedModel: 'Room',
            reverseRelation: {
                key: 'building'
            }
        }
    ]
});

Room = Backbone.RelationalModel.extend();

house = new Building({id:1});
science_building = new Building({id:2});

console.log(house.get('rooms').length);  // ==> 0

living_room = new Room({building:1,name:"Living Room"});
lab = new Room({building:2,name:"Chemistry Lab"});

console.log(house.get('rooms').length); // ==> 1
console.log(house.get('rooms').first().get('name')); // ==> "Living Room"

console.log(science_building.get('rooms').length); // ==> 1
console.log(science_building.get('rooms').first().get('name')); // ==> "Chemistry Lab"

reverseRelation属性指定关系的“属于”部分。

如果您的关系是,例如,一栋建筑有许多房间。房间属于建筑物:

Building = Backbone.RelationalModel.extend({
    relations: [
        {
            type: 'HasMany',
            key: 'rooms',
            relatedModel: 'Room',
            reverseRelation: {
                key: 'building'
            }
        }
    ]
});

Room = Backbone.RelationalModel.extend();

house = new Building({id:1});
science_building = new Building({id:2});

console.log(house.get('rooms').length);  // ==> 0

living_room = new Room({building:1,name:"Living Room"});
lab = new Room({building:2,name:"Chemistry Lab"});

console.log(house.get('rooms').length); // ==> 1
console.log(house.get('rooms').first().get('name')); // ==> "Living Room"

console.log(science_building.get('rooms').length); // ==> 1
console.log(science_building.get('rooms').first().get('name')); // ==> "Chemistry Lab"

reverseRelation属性指定关系的“属于”部分。

我想我也需要在房间模型中定义关系,但它会自动找到它。所以
lab.get('building')
将返回科学大楼。谢谢这个回答终于让我明白了。非常感谢。我想我也需要在房间模型中定义关系,但它会自动找到它。所以
lab.get('building')
将返回科学大楼。谢谢这个回答终于让我明白了。非常感谢。