将一个对象与其他几个对象相关联

时间:2013-12-17 14:35:12

标签: ios core-data rubymotion

我遇到了实现以下用例的问题:

Foo通过名为Bar的关系与myBar建立了一对一的关系。但是,不止一个Foo可以具有相同的Bar

我来自网络应用程序背景,我将Foo bar_id myBar,并Bar bar_id Bar Foo { {1}}。我知道Core Data不是ORM,但我希望可能有类似的东西。

我遇到的问题是,将相同的nil个实例设置为多个myBar会导致之前的关系恢复为Bar

除了实现多对多关系外别无选择吗?我真的只想调用Bar方法并让它返回# assume `b` is some instance of Bar f1 = Foo.alloc.init f1.bar = b # calling f1.bar getter now returns the `b` instance of Bar f2 = Foo.alloc.init f2.bar = b # f2.bar getter returns the Bar instance, but *f1.bar does not* - it is now nil. 个实例,而不是一组只有1 {{1}}的内容。

我在RubyMotion中实现这个项目,并在下面包含我的问题的一个例子。 Objective-C开发人员不应该遇到问题,但这个问题比我编写的特定代码更具原则性。

{{1}}

1 个答案:

答案 0 :(得分:1)

发现问题:

FooBar关系已正确设置为 - 1,但是,反向(BarFoo)未设置为多个。