SQLAlchemy将一个列的默认值设置为另一个列的值。

17 浏览
0 Comments

SQLAlchemy将一个列的默认值设置为另一个列的值。

我正在尝试为物质编写一个类,该类具有一个名称字段(用于实验室常用的名称)和另一个字段用于长名称(以防名称实际上是不完整的)。有没有办法告诉类,在没有指定长名称的情况下,将名称字段的值复制到长名称字段中?

我尝试了类似于这样的代码:

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`未定义。我还能做些什么吗?

0