grassoalvaro wrote:
>
> Hmm, but after_insert() is the best place where i can put this king
> logic (updating/inserting data in may places). So i can't use session
> operations inside of after_insert() at all?

nope.  use before_flush() or after_flush() on SessionExtension for that.

>
> On 11 Sie, 18:35, "Michael Bayer" <[email protected]> wrote:
>> you can't do Session operations and commits inside of after_insert().
>> you're already in the session.flush() operation.  I guess I have to make
>> this clearer for every individual method in the docs.
>>
>> grassoalvaro wrote:
>>
>> > I don't know why but now exception is:
>>
>> > InvalidRequestError: Instance '<DBAccount at 0x134360d0>' is not
>> > persisted
>>
>> > On 11 Sie, 01:34, grassoalvaro <[email protected]> wrote:
>> >> Hi,
>>
>> >> example from Pylons application, but i think that framework doesn't
>> >> matter here:
>>
>> >>     class DBAccountExtension(orm.interfaces.MapperExtension):
>> >>         def after_insert(self, mapper, connection, instance):
>> >>             response = hrd.user_create(instance.to_hrd())
>> >>             if response['status'] == hrd.STATUS_OK:
>> >>                 instance.csa = response['resdata']['user']['id']
>> >>                 db.save_or_update(instance)
>> >>                 db.commit()
>> >>             return orm.interfaces.EXT_CONTINUE
>>
>> >> After saving model i'm making request to some API (to save data there
>> >> also). API return status information (response['resdata']['user']
>> >> ['id']) which i want to update in database so i'm trying to do
>> >> db.save_or_update(instance) and then db.commit() but after this 2
>> >> lines application prints exception:
>>
>> >> InvalidRequestError: The transaction is closed
>>
>> >> Any solutions?
>>
>> >> (sorry for my english).
> >
>


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

Reply via email to