SQLAlchemy docs(设置列默认值) - 这行语法有效的python如何? [关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLAlchemy docs(设置列默认值) - 这行语法有效的python如何? [关闭]相关的知识,希望对你有一定的参考价值。

在阅读关于Column构造函数参数的SQLAlchemy文档时,我找到了this code example(编辑以删除对Column()的无关调用,请参阅链接中的完整示例):

t = Table("mytable", meta,
    # define 'key' to pull its default from the 'keyvalues' table
    Column('key', String(20), default=keyvalues.select(keyvalues.c.type='type1', limit=1))
)

具体来说,我不明白defaultColumn()论证是如何有效的Python。对于我和我的Python解释器,keyvalues.select(keyvalues.c.type='type1', limit=1)似乎使用表达式keyvalues.c.type作为keyvalues.select()的关键字参数的名称。

文档掩盖了keyvalues的定义,我无法找到一种方法来定义keyvalues,阻止我的解释器抛出一个SyntaxError。

我是否正确表达式不能用作关键字?这个实际上是有效的语法吗?如果它是有效的语法,您能否提供一个简短的示例,显示使其有效的必要代码?

答案

我相信这是一个错误的日期回到2006,已提交patch修复。

以上是关于SQLAlchemy docs(设置列默认值) - 这行语法有效的python如何? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

为啥 sqlalchemy 没有正确设置默认值?

为啥在提交对象之前 SQLAlchemy 默认列值不可用?

如何根据 SqlAlchemy 关系设置模型默认值?

如何根据SqlAlchemy关系设置模型默认值?

Flask-Sqlalchemy设置时间默认值

如何将sqlalchemy中列的默认值设置为关系中列的值?