0

我尝试使用骨干关系来定义一对一的关系。

B是在没有任何依赖关系或 A 知识的情况下定义的

var B = Backbone.RelationalModel.extend({

    /* No relationship defined with A */

});

A然后定义 ,尝试定义与 的一对一关系B

var A = Backbone.RelationalModel.extend({

    relations: [

        {

            type: Backbone.HasOne,

            key: 'b',

            relatedModel: B,

            reverseRelation: {

                key: 'a',

                type: Backbone.HasOne

            }

        }]

    /* ... */

});

骨干关系文档对一对一关系有这样的说法:

The default reverseRelation.type for a "HasOne" relation is "HasMany". This can be set to "HasOne" instead, to create a one-to-one relation.

检查结果表明当我这样做时

var someId = 123;

var myB = B.findOrCreate(someId);

var myA = A.findOrCreate(someId);

对象myAmyB均已成功创建,包含所有预期数据。

然而,相关的对象不存在。我想myA.b参考myB,似乎骨干关系已经创建了这个键,但它未定义。

我没有指定“加入”是要使用id两个类的属性发生的——但是我不知道如何。

我该如何做到这一点?

4

0 回答 0