On Wed, Oct 18, 2017 at 6:56 PM, Jonathan Vanasco <[email protected]> wrote:
> is there a concise way to explicitly flush an object and all of it's
> immediate relations?
>
> for example, I have some code that looks like this:
>
>     dbSession.flush(objects=[foo, foo,bar, foor.baz, foo.widget, foo.bang,
> foo.etc, ])
>
> after starting some work to remodel the db, i'd like to find a way where I
> can just pass `foo` into the flush, and not worry about enumerating the
> exact object.

that's what "cascade" normally does and there is no "flush" cascade,
since the whole "flush an object" use case is de-emphasized.

You'd need to build up the traversal you're looking for here, which
you can get by making use of mapper.cascade_iterator() which is how
all the cascade stuff works.  I'm thinking of other ways, like using a
second session with merge() or expunge() or something like that but
none of them are really worth it, it's all just to get at the fact
that they call cascade_iterator() internally.  Or use this thing:
http://docs.sqlalchemy.org/en/latest/faq/sessions.html#how-do-i-walk-all-objects-that-are-related-to-a-given-object




>
>
>
> --
> SQLAlchemy -
> The Python SQL Toolkit and Object Relational Mapper
>
> http://www.sqlalchemy.org/
>
> To post example code, please provide an MCVE: Minimal, Complete, and
> Verifiable Example. See http://stackoverflow.com/help/mcve for a full
> description.
> ---
> You received this message because you are subscribed to the Google Groups
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to