gpt4 book ai didi

python - SQLAlchemy 将一列的默认值设置为另一列的默认值

转载 作者:太空狗 更新时间:2023-10-29 17:54:11 47 4
gpt4 key购买 nike

我正在尝试为物质编写一个类,其中包含一个名称(用于实验室中常用的名称)和另一列用于长名称(以防名称实际上不完整)。如果没有指定长名称,是否可以告诉类将名称字段的值复制到长名称字段?

我试过这样的:

class Substance(Base):
__tablename__ = "substances"
id = Column(Integer, primary_key=True)
code = Column(String, unique=True)
name = Column(String, unique=True)
long_name = Column(String, unique=True, default=name)

但这失败了,因为 name 是未定义的。还有什么我可以做的吗?

最佳答案

您可以创建 context-sensitive default function

def mydefault(context):
return context.get_current_parameters()['name']

class Substance(Base):
__tablename__ = "substances"
id = Column(Integer, primary_key=True)
code = Column(String, unique=True)
name = Column(String, unique=True)
long_name = Column(String, unique=True, default=mydefault)

关于python - SQLAlchemy 将一列的默认值设置为另一列的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36579355/

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