No worries Byron. I will send a mail reminder for myself for when I get home tonight. We have all been there in the "not clicking" department of the store.
Teddy
On 7/24/06, Byron Raines <[EMAIL PROTECTED]> wrote:
Thanks, Teddy. I'd appreciate it if you would send me a code snippet
when you can. For some reason, it's just not clicking.
Byron
Teddy Payne wrote:
> I don't have my reactor code on me, but to get the address information
> I believe there is a method called _getParent() or getParent(). It
> should get the parent relationship object. _getParent() should get
> staff and then you can create call the iterator for the Addresses.
>
> I would give a code snippet, but that is on my system at home.
>
> Teddy
>
> On 7/24/06, *Byron Raines* < [EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>> wrote:
>
> Teddy,
>
> I understand that. I may not be explaining myself
> correctly. Maybe an
> example.
>
> Table: Staff
>
> StaffID: int
> Staffrname: char(50)
>
> Table: Address
>
> AddressID: int
> StaffID: int
> Address1: char(50)
> State: char (2)
>
> reactor.xml:
> <object name="Staff">
> <hasOne name="Address">
> <relate from="StaffID" to="StaffID" />
> </hasOne>
> </object>
>
> I want to display a list of staff and their address.
>
> If I do:
>
> <cfset StaffGateway = Reactor.createGateway ("Staff") />
> <cfset qStaff = StaffGateway.getAll() />
>
> I can list all the Staff but not their address info. It seems I
> cannot
> access their Address info unless I create a query combining the two,
> then do the "createGateway()" and "getAll(). My thinking was I should
> be able to access the address info in the same way I access it on
> a per
> record basis.
>
> I hope I'm explaining myself correctly.
>
> Byron
>
>
>
> Teddy Payne wrote:
> > Sorting on Create Record? Record factory objects are typically used
> > to work with 1 record at a time. A Gateway is for working with
> > multiple records at a time.
> >
> > I am not trying to state the obvious or chastise, but does that make
> > sense?
> >
> > Teddy
> >
> > On 7/24/06, *Byron Raines* < [EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>
> > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> wrote:
> >
> > Just trying to make sure I'm understanding this particular
> thread. I
> > have a table that has a "hasOne" relationship with another
> table. I
> > understand when doing a "CreateRecord" how the relationships
> > work. It
> > looks like it does not work when doing a "CreateGateway". Right
> > now, if
> > I want to display a listing, I have to create query joining
> the two
> > tables with what I need, then do at getAll() -- by the way I
> love
> > getAll(), it makes having sortable tables so easy. I would have
> > thought
> > you would have the same relationship strategy as with Create
> Record.
> >
> > Am I understanding this correctly?
> >
> > Byron
> >
> > Doug Hughes wrote:
> > > Do you mean on gateways? Yea. Why wouldn't I?
> > >
> > > Doug
> > >
> > > -----Original Message-----
> > > From: [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> > <mailto: [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>> [mailto:
> > [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> <mailto:[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>>] On
> > > Behalf Of Byron Raines
> > > Sent: Friday, July 21, 2006 7:25 PM
> > > To: [email protected]
> <mailto:[email protected]>
> > <mailto: [email protected]
> <mailto:[email protected]>>
> > > Subject: Re: (LONG) Re: [Reactor for CF] SharedKey
> > >
> > > Doug,
> > > Will this allow the use of getAll( ) for this situation?
> > >
> > > byron
> > >
> > > Doug Hughes wrote:
> > >
> > >> Chris,
> > >>
> > >> This will probably be depricated or removed in 2.0. In 2.0 I
> > plan to
> > >>
> > > allow
> > >
> > >> you to define objects which extend beyond one table. So, in
> > your case you
> > >> could define a consultant which is made up of the Consultant
> > and User
> > >> tables. That should be easier than this shared key nonsense
> > and help
> > >> improve performance in general.
> > >>
> > >> Doug
> > >>
> > >> -----Original Message-----
> > >> From: [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> > <mailto: [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>>
> > [mailto:[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> > <mailto:[EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>>] On
> > >> Behalf Of Christopher Bradford
> > >> Sent: Friday, July 21, 2006 2:00 PM
> > >> To: [email protected]
> <mailto:[email protected]>
> > <mailto: [email protected]
> <mailto:[email protected]>>
> > >> Subject: (LONG) Re: [Reactor for CF] SharedKey
> > >>
> > >> Results! :-)
> > >>
> > >> I tried the code in the docs and was completely shocked
> to see
> > that it
> > >> worked. :-p Well, turns out that it didn't *really* work; it
> > only sort of
> > >> worked. The problem is when there is more than one hasOne
> > relationship
> > >> between to same two tables. For example:
> > >>
> > >> TABLE: User
> > >> ID int PK identity
> > >> sponsorID int FK to Consultant.userID
> > >>
> > >> TABLE: Consultant
> > >> userID int PK FK to User.ID
> > >>
> > >> In Reactor, User has two relationships to Consultant:
> > >>
> > >> <object name="user">
> > >> <!-- Consultant is a User -->
> > >> <hasOne name="consultant">
> > >> <relate from="ID" to="userID" />
> > >> </hasOne>
> > >>
> > >> <!-- User has a Sponsor -->
> > >> <hasOne name="consultant" alias="sponsor">
> > >> <relate from="sponsorID" to="userID" />
> > >> </hasOne>
> > >> </object>
> > >>
> > >> <object name="consultant">
> > >> <!-- Consultant is a User -->
> > >> <hasOne name="user">
> > >> <relate from="userID" to="ID" />
> > >> </hasOne>
> > >> </object>
> > >>
> > >> The question was where to put the sharedKey attribute.
> The docs
> > say to put
> > >>
> > >
> > >
> > >> it on the consultant object. I did that (<object
> name="consultant"
> > >> sharedKey="true">). My XML editor complained, because the DTD
> > doesn't
> > >>
> > > allow
> > >
> > >> for this, but ModelGlue worked. I was able to create a
> > consultant object,
> > >> get its user, set properties on both, and save. However,
> I wondered
> > >>
> > > whether
> > >
> > >> Consultant was able to distinguish between the "is-A"
> relationship
> > >> (Consultant is a User) and the "has-A" relationship (User
> has a
> > Sponsor).
> > >> When I created a new Consultant object and set the Sponsor on
> > its User to
> > >> the previously created Consultant, Reactor overwrote the
> > initial record.
> > >> This suggests that putting the sharedKey on the object
> tag does not
> > >> distinguish between different hasOne relationships.
> > >>
> > >> So, I moved the sharedKey attribute to the hasOne tag
> inside the
> > >>
> > > Consultant
> > >
> > >> object (<hasOne name="user" sharedKey="true">). This
> time, SQL
> > Server
> > >> complained about a foreign key violation. Turns out
> Reactor was
> > saving the
> > >>
> > >
> > >
> > >> Consultant first, which won't work.
> > >>
> > >> Finally, I moved the sharedKey attribute to the first hasOne
> > tag inside
> > >>
> > > the
> > >
> > >> User object (<hasOne name="consultant" sharedKey="true">) --
> > the one
> > >> representing an "is-a" relationship. This worked
> perfectly. I
> > was able to
> > >> create a new Consultant, get its User, set properties on
> both,
> > and set the
> > >>
> > >
> > >
> > >> Sponsor without overwriting the earlier records.
> > >>
> > >> So, it seems the best place is to put the sharedKey="true" in
> > the base
> > >> object's hasOne tag that refers to the extending object.
> > >>
> > >> I wonder whether it doesn't make just as much sense, and
> would
> > be clearer,
> > >>
> > >
> > >
> > >> to add an "isA" tag in Reactor v2?
> > >>
> > >> Hopefully this is clear and helpful.
> > >>
> > >> Christopher Bradford
> > >> Alive! LLP
> > >>
> > >> ----- Original Message -----
> > >> From: "Doug Hughes" < [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>>
> > >> To: < [email protected]
> <mailto: [email protected]>
> > <mailto:[email protected]
> <mailto: [email protected]>>>
> > >> Sent: Friday, July 21, 2006 7:27 AM
> > >> Subject: SPAM-LOW: RE: [Reactor for CF] SharedKey
> > >>
> > >>
> > >>
> > >>
> > >>> You know, this smells funny, doesn't it?
> > >>>
> > >>> Chris - give it a try with the code in the docs. If that
> > doesn't work
> > >>> move
> > >>> the shared key to the relationship (where it seems it
> belongs)
> > and try
> > >>> that.
> > >>>
> > >>>
> > >>> Plz report back and let us know if the docs are fubared.
> > >>>
> > >>> Doug
> > >>>
> > >>>
> > >>
> > >>
> > >>
> > >>
> > >> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- --
> > >> -- --
> > >> Reactor for ColdFusion Mailing List
> > >> [email protected] <mailto:[email protected]>
> <mailto: [email protected] <mailto: [email protected]>>
> > >> Archives at:
> > http://www.mail-archive.com/reactor%40doughughes.net/
> > < http://www.mail-archive.com/reactor%40doughughes.net/>
> > >> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- --
> > >> -- --
> > >>
> > >>
> > >>
> > >> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- --
> > >>
> > > -- --
> > >
> > >> Reactor for ColdFusion Mailing List
> > >> [email protected] <mailto:[email protected]>
> <mailto:[email protected] <mailto:[email protected]>>
> > >> Archives at:
> http://www.mail-archive.com/reactor%40doughughes.net/
> > >> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- --
> > >>
> > > -- --
> > >
> > >>
> > >>
> > >
> > >
> > > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> > -- -- -- --
> > > -- --
> > > Reactor for ColdFusion Mailing List
> > > [email protected] <mailto: [email protected]>
> <mailto:[email protected] <mailto:[email protected]>>
> > > Archives at:
> http://www.mail-archive.com/reactor%40doughughes.net/
> > > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> > -- -- -- --
> > > -- --
> > >
> > >
> > >
> > > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> > -- -- -- -- -- --
> > > Reactor for ColdFusion Mailing List
> > > [email protected] <mailto: [email protected]>
> <mailto:[email protected] <mailto:[email protected]>>
> > > Archives at:
> http://www.mail-archive.com/reactor%40doughughes.net/
> <http://www.mail-archive.com/reactor%40doughughes.net/ >
> > > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> > -- -- -- -- -- --
> > >
> > >
> >
> >
> > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- -- --
> > Reactor for ColdFusion Mailing List
> > [email protected] <mailto:[email protected]>
> <mailto:[email protected] <mailto: [email protected]>>
> > Archives at:
> http://www.mail-archive.com/reactor%40doughughes.net/
> > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- -- --
> >
> >
> >
> >
> > --
> > <cf_payne />
> > http://cfpayne.wordpress.com/
> > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- --
> > -- -- -- --
> > Reactor for ColdFusion Mailing List
> > [email protected] <mailto:[email protected]>
> > Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
> > -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> > -- -- -- --
>
>
> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- -- -- -- --
> Reactor for ColdFusion Mailing List
> [email protected] <mailto:[email protected] >
> Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
> < http://www.mail-archive.com/reactor%40doughughes.net/>
> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- -- -- -- --
>
>
>
>
> --
> <cf_payne />
> http://cfpayne.wordpress.com/ <http://cfpayne.wordpress.com/>
> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- -- -- --
> Reactor for ColdFusion Mailing List
> [email protected]
> Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
> -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
> -- -- -- --
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Reactor for ColdFusion Mailing List
[email protected]
Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
--
<cf_payne />
http://cfpayne.wordpress.com/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Reactor for ColdFusion Mailing List
[email protected]
Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
