0
항목 : 나는에 항목을 추가 append
를 사용하는 경우대다 SQLAlchemy의 나던 부하의 관계는 추가하고 삭제하는 동안이 같은 SQLAlchemy의에서 many-to-many 자기 참조 관계를 만들어
blacklist_association_table = Table('userblacklist', Base.metadata,
Column('user_id', Integer, ForeignKey('user.id'), primary_key=True),
Column('blacklisted_id', Integer, ForeignKey('user.id'), primary_key=True)
)
class User(Base):
__tablename__ = 'user'
id = Column(Integer, primary_key=True)
name = Column(String(250), nullable=True)
blacklist = relationship("User",
secondary=blacklist_association_table,
primaryjoin=(id == blacklist_association_table.c.user_id),
secondaryjoin=(blacklist_association_table.c.blacklisted_id == id))
을 blacklist
필드 작동하고 새 데이터가 DB에 커밋됩니다
그러나 목록에 액세스해야 할 때 blacklist
필드가 비어 있습니다 !! 데이터 DB에있는 동안, 즉
u = session.query(User).filter(User.id == userid).one_or_none()
print len(u.blacklist)
출력 0
있다!
무엇이 문제입니까?
예, 실제로 저는 이와 같은 다른 필드가 있습니다.이 오타는 그 때문이었습니다. 나는 그 질문을 편집했다. 데이터베이스에 데이터가있는 동안이 두 필드는 비어 있습니다. – RYN
예, 정확히! 이게 문제 야 – RYN