It should solve my problem.

I'm still amazed by the very high quality of this mailing-list.
The answers are always targeting very precisely the solutions to the
problems I'm sharing.
Thanks a lot !!


Le ven. 11 janv. 2019 à 20:45, Mike Bayer <mike...@zzzcomputing.com> a
écrit :

> On Fri, Jan 11, 2019 at 1:19 PM tonthon <tontho...@gmail.com> wrote:
> >
> > Hi,
> >
> > We're using Sqlalchemy in a Pyramid web application, with the pyramid_tm
> package (a transaction that wraps every web request inside a DB
> transaction). It's very usefull and it works like a charm.
> >
> > In order to follow some security rules and to be able to certify part of
> our app, we want to change some things :
> > - For a specific MyModel, the main bind should have only read access.
> > - Another bind, dedicated to MyModel and only used by a separated
> library should have RW privileges.
> >
> > The problem comes with the following :
> > - A "transaction" begins
> > - A "session1" object is initialized with the Read-only bind
> > - An "instance1" of MyModel is loaded in "session1"
> > - A "session2" using a binding with RW privileges is initialized
> > - It loads a MyModel "instance2" in the "session2" and modifies it (then
> merges it)
> > - "session2" is commited (instance2 is persisted)
> > - I can't get the "instance1" of MyModel initially loaded to be
> refreshed (surely due to the transaction isolation level).
> >
> > Has anyone an advice to share on how to refresh "instance1" ?
>
> if these "binds" point to exactly the same database schema and just
> have different permissions you might find it much easier to use one
> session with two binds.    You can override get_bind() to use a
> different engine for write operations on a specific model.    there's
> an example of this at:
>
> https://techspot.zzzeek.org/2012/01/11/django-style-database-routers-in-sqlalchemy/
>   .    there's also a special hook where you can persist individual
> instances of a class on different database connections too but you
> shouldn't need that here.
>
>
>
>
> >
> > Thanks in advance
> > Best regards
> > Gaston Tjebbes
> > http://majerti.fr
> >
> >
> >
> >
> > --
> > 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 sqlalchemy+unsubscr...@googlegroups.com.
> > To post to this group, send email to sqlalchemy@googlegroups.com.
> > 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 sqlalchemy+unsubscr...@googlegroups.com.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> 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 sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to