Hello,
I'm struggling with a simple one to many relation, pls help!
active_meetup = MeetupEvent(...)
reg = MeetupRegistration(meeting=active_meetup)
db.save(reg)
*<class 'sqlalchemy.exceptions.OperationalError'>: (OperationalError) (1048,
"Column 'meeting_id' cannot be null") u'INSERT INTO dou_meetup_registrants
(meeting_id, name, email, phone) VALUES (%s, %s, %s, %s)' [None, u'1.0',
u'[EMAIL PROTECTED]', u'+38 063 2061046']*
Obviously SA somehow can't find meeting_id even thou reg.meeting is OK.
Here is my mapping code:
dou_meetupregs_tbl = Table('dou_meetup_registrants', meta,
autoload=True)
dou_meetups_tbl = Table('dou_meetups', meta, autoload=True)
mapper(MeetupEvent, dou_meetups_tbl, properties={
'registrants':relation(MeetupRegistration, backref='meetup'),
})
mapper(MeetupRegistration, dou_meetupregs_tbl, properties={
})
And classes (just in case):
class MeetupEvent(object):
regcount = property(fget=lambda self: len(self.registrants))
def __repr__(self):
return "<MeetupEvent %s %r>" % (self.id, self.url)
class MeetupRegistration(object):
def __init__(self, meeting, name=None, email=None, phone=None):
if not meeting:
raise ValueError("Meeting event not set")
if not email:
raise ValueError("Email is required")
self.meeting = meeting
self.name = name
self.email = email
self.phone = phone
def __repr__(self):
return "<MeetupRegistration %s (%s,%s)>" % (self.id, self.meeting.id,
self.email)
--
Max
http://maxischenko.in.ua // http://www.linkedin.com/in/maksim
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---