gpt4 book ai didi

python - Flask SQLAlchemy 枚举字段默认值

转载 作者:行者123 更新时间:2023-12-03 15:53:18 26 4
gpt4 key购买 nike

您好,我正在尝试使用flask-SQLAlchmey 创建表,这是代码

class User(UserMixin, db.Model):

__tablename__ = 'mailbox'

id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(100), index=True, nullable=False)
password = db.Column(db.String(255), nullable=False)
name = db.Column(db.String(100), nullable=False)
maildir = db.Column(db.String(100), nullable=False)
alias = db.Column(db.Enum('N','Y'), nullable=False, default="N")

运行db init后,迁移这里是mysql show create table的输出
| mailbox | CREATE TABLE `mailbox` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(100) NOT NULL,
`name` varchar(100) NOT NULL,
`maildir` varchar(100) NOT NULL,
`alias` enum('N','Y') NOT NULL,
PRIMARY KEY (`id`),
KEY `ix_mailbox_username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

输出显示 enum 的默认值不存在。你能帮我吗,我需要做些什么来解决这个问题。

最佳答案

除了 Umar Draz 的回答,您还可以在这里找到文档:

https://docs.sqlalchemy.org/en/13/core/metadata.html#sqlalchemy.schema.Column.params.server_default

对于枚举,您必须使用括号:

server_default=("")

关于python - Flask SQLAlchemy 枚举字段默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44343431/

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