yep indeed, it works, I was doing something wrong. 

Thanks for all the help and sorry about late reply

On Thursday, August 17, 2017 at 9:57:39 PM UTC+2, cecemel wrote:
>
> Is the backref relationship supposed to work with objects loaded from the 
> DB?
>
>
> Here is the case: 
>
> Similar to the (doc/tutorial 
> <http://docs.sqlalchemy.org/en/rel_1_1/orm/backref.html?highlight=backref>) 
> I have the following classes:
>
> from sqlalchemy import Integer, ForeignKey, String, Columnfrom 
> sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy.orm import 
> relationship
> Base = declarative_base()
> class User(Base):
>     __tablename__ = 'user'
>     id = Column(Integer, primary_key=True)
>     name = Column(String)
>
>     addresses = relationship("Address", back_populates="user")
> class Address(Base):
>     __tablename__ = 'address'
>     id = Column(Integer, primary_key=True)
>     email = Column(String)
>     user_id = Column(Integer, ForeignKey('user.id'))
>
>     user = relationship("User", back_populates="addresses")
>
> When testing the snippet it works like expected:
>
> >>> u1 = User()>>> a1 = Address()>>> u1.addresses[]>>> print(a1.user)None
> >>> u1.addresses.append(a1)>>> u1.addresses[<__main__.Address object at 
> >>> 0x12a6ed0>]>>> a1.user<__main__.User object at 0x12a6590>
>
> But when doing the same with a user loaded to the db:
>
>     >>> u1 = get_user_by_id_from_db(1)
>     >>> a1 = Address()
>     >>> u1.addresses # fair, the user didn't have any address.
>     []
>     >>> u1.addresses.append(a1)
>     >>> u1.addresses # I didn't expect empty list!!
>     []
>
>     >>> a1.user
>
>     None
>
> So my questions:
>
>    - - is this supposed to work?
>    - - if so, how can I make it work?
>    - - if not, any workarounds proposed (and why not)?
>
> More information about the system:
>
> SQLAlchemy 1.1.13
>
> Python 3.5
>
> Postgres 9.6
>
>
>
> thanks again!
>
>
> Please let me know if any details miss.
>
>
>

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