我尝试使用骨干关系来定义一对一的关系。
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);
对象myA
和myB
均已成功创建,包含所有预期数据。
然而,相关的对象不存在。我想myA.b
参考myB
,似乎骨干关系已经创建了这个键,但它未定义。
我没有指定“加入”是要使用id
两个类的属性发生的——但是我不知道如何。
我该如何做到这一点?