Re: Inverse to-one relationships
Re: Inverse to-one relationships
- Subject: Re: Inverse to-one relationships
- From: Ramsey Gurley <email@hidden>
- Date: Thu, 22 Jul 2010 10:12:00 -0400
One-to-optional-one relationship... Not doable as far as I know. In
another discussion on the topic, Chuck Hill suggested:
You could model it as a right-outer join and optional, but I think
that EOF is still going to have a hissy fit when it does not find
the row. Worth a try and a good bug to log with Apple if it does
not work.
Chuck
Great idea. I gave that a shot, but it didn't work.
Beyond that, I've considered modeling a typical one-to-many, applying
a unique constraint to the FK, creating a method to get/set the
relationship, and then register a custom EOClassDescription to replace
the reported toMany with my getter/setter toOne. I haven't tried the
custom EOClassDescription bit yet though.
Ramsey
On Jul 22, 2010, at 8:00 AM, Paul Hoadley wrote:
Hello,
I know this topic comes up on the list from time to time, but I just
need a quick sanity check.
I have two entities, A and B. For every A, there is a corresponding
B. For some subset of all Bs, each has a corresponding A.
Currently I have modelled this with a single relationship from A to
B, so that's a mandatory to-one relationship. (Alternatively, I
could have modelled it with an optional to-one relationship from B
to A.)
At different times, I need to traverse this relationship in both
directions. For any A, A.b() will give me the related B. But for
the reverse direction, say I have a B and I want its A (if it has
one), I have a custom method B.a() which does a fetch for the A such
that A.b() is the B of interest. Sometimes, though, I just want to
know if there is an A for a particular B, or whether it's null, and
in this setting, the fetch is expensive.
Here's where I need the sanity check: is there a way, given the
constraints above, to model an inverse to-one relationship from B to
A such that it appears as the inverse to EOF? That is, such that
calling, say, A.addObjectToBothSidesOfRelationshipWithKey(B, "b")
does both A.setB(B) and B.setA(A)? I'm assuming there's not, as I
certainly can't beat the model into doing it. I can work around it
by doing the right thing at creation time for every A, I just wanted
to know if I was missing something where EOF (or Wonder) would
handle this automagically.
--
Paul.
http://logicsquad.net/
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden