0
我有这样的表结构中的SQLAlchemy:SQLAlchemy的添加多对一排逻辑
User(Base)
__tablename__ = 'users'
id = Column(Integer, primary_key = True)
addresses = relationship("Address", backref="user")
Address(Base)
__talbename__ = 'addresses'
id = Column(Integer, primary_key = True)
user_id = Column(Integer, ForeignKey(users.id))
所以一个多(地址)一(用户)之间的关系。
我现在的问题是如何在不删除已经存储的地址的情况下轻松地为用户添加地址。
在纯SQL中,我只需在地址表中插入一行,并将外键用于正确的用户。
这是我正在做它现在在SQLAlchemy的(在用户类方法):
def add_address(self, address):
adds = self.addresses
adds.append(address)
self.addresses = adds
那么我现在基本上做的是首先找出所有的地址,然后追加列表覆盖该列表再次与额外的地址。
我想知道是否有更有效的方法来做到这一点?