gpt4 book ai didi

Python/SQLAlchemy - 更新外键时加载关系?

转载 作者:太空狗 更新时间:2023-10-30 00:00:22 24 4
gpt4 key购买 nike

我有一个类:

class Chart(Base):
__tablename__ = 'chart'
id = C('chart_id', Integer, primary_key=True)
element_id = C(Integer, ForeignKey('element.element_id'))
element = relationship(Element)
name = C(String)

def __init__(self, name):
self.name = name

用法很常见,

chart = Chart('Some name')
chart.element_id = element_id

但是设置element_id后chart.element为None。有什么方法可以在刷新/提交之前为新对象自动加载这种关系?

最佳答案

最好的选择是

chart = Chart('Some name')
chart.element = element

将直接对象分配给关系船。如果您分配 element_id 那么直到它刷新它将在内存中。在内部它会触发查询 SELECT * FROM ELEMENT WHERE ELEMENT.id = element_id 但 element_id 数据未存储或将在内存中。

所以如果你不想刷新,我建议直接分配对象。

希望对您有所帮助。

关于Python/SQLAlchemy - 更新外键时加载关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7698717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com