Model
========
class VDCTemplates(DeclarativeBase):
    __tablename__='cd_vdc_templates'
    id = Column(Unicode(50), primary_key=True)
    vdc_id=Column(Unicode(50), ForeignKey('cd_vdc.id',
ondelete="CASCADE"))
    template_id=Column(Unicode(50),
ForeignKey('cd_account_templates.id', ondelete="CASCADE"))
    account_id=Column(Unicode(50), ForeignKey('cd_accounts.id',
ondelete="CASCADE"))


code
======
acc_template=self.create_template_data()
DBSession.add(acc_template)

vdc_template = VDCTemplates()
vdc_template.account_id  = account_id
vdc_template.vdc_id      = vdc_id
vdc_template.template_id = acc_template.id
DBSession.add(vdc_template)




* Getting IntegrityError error
(IntegrityError) (1452, 'Cannot add or update a child row: a foreign
key constraint fails (`my_cms_ee/cd_vdc_templates`, CONSTRAINT
`cd_vdc_templates_ibfk_1` FOREIGN KEY (`template_id`) REFERENCES
`cd_account_templates` (`id`) ON DELETE CASCADE)') u'INSERT INTO
cd_vdc_templates (id, vdc_id, template_id, account_id) VALUES (%s, %s,
%s, %s)' ['6ae8e571-ebce-6977-150d-09f7127acb5b', 'ab977753-
de54-6e3b-3d7c-644d12f66d63', '8e0ce099-4ba7-2e01-304c-edc18803fbce',
'b56bc9e3-288b-a98f-a974-b67f90970122']

* Its working, if i put transaction.commit() after
DBSession.add(acc_template), but that not atomic.

* Have any way to make it atomic  ???

-- 
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.

Reply via email to