On May 2, 2009, at 8:16 PM, Iain Duncan wrote:
> > On Sat, 2009-05-02 at 09:41 -0400, Michael Bayer wrote: >> >> you'd set cascade="all, delete-orphan" on the Purchase.registration >> side (in this case its your backref). > > Thanks Mike. So what is the recommended way of creating the attached > item though, or is it supposed to happen automatically from the > mapper? you can say p.registration = r, or Purchase(registration=r), the cascade option would enforce the constraint at flush time. > > > Iain >> >> >> On May 2, 2009, at 1:42 AM, Iain Duncan wrote: >> >>> >>> Hi all, I have a mapper that looks like this: >>> >>> mapper( Registration, registration_table, properties={ >>> 'purchase': relation(Purchase, >>> backref=backref('registration', uselist=False), >>> cascade='all' ), >>> }) >>> >>> My registration table has a foreign key to purchases, and I want to >>> make >>> sure no registration exists without an associated purchase. I have >>> the >>> referrence backwards like a many-to-one because purchases may also >>> be >>> referred to in other tables ( like memberships ). Maybe this is >>> not a >>> good idea, not sure. Feel free to tell me. Should this perhaps be >>> handled in a separate associating table with primary key with one >>> column >>> primary key constraints on it? >>> >>> But, my immediate problem is that I don't know what the correct >>> way to >>> make sure I create a purchase on creation of a registration. Should >>> I be >>> creating a purchase in the registration constructor? Should I be >>> doing >>> something like: >>> >>> r = Registration( purchase=Purchase() ) >>> >>> Or should it work magically if I set up my cascade options >>> differently? >>> >>> Thanks >>> Iain >>> >>> >>> >>>> >> >> >>> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---