问题描述
我试图在表中插入枚举值。我的表具有一列枚举类型,我想在其中插入值 status 。
模式是:
from marshmallow import Schema,fields
from marshmallow_enum import EnumField
from enum import Enum
ENUM_TYPE = Enum('ENUM_TYPE','status value')
class MySchema(Schema):
status = EnumField(ENUM_TYPE)
从app.db导入ForeignKey,模型
from marshmallow_enum import EnumField
class Message(Base):
__tablename__ = "dummy"
status = Column(EnumField(ENUM_TYPE))
我正在尝试将其添加到表格中
session.add(Message(MESSAGE_STATUS.status))
我收到以下错误消息:
AttributeError: 'EnumField' object has no attribute '_set_parent_with_dispatch'
sqlalchemy.exc.ArgumentError: 'SchemaItem' object,such as a 'Column' or a 'Constraint' expected,got <fields.EnumField(default=<marshmallow.missing>,attribute=None,validate=None,required=False,load_only=False,dump_only=False,missing=<marshmallow.missing>,allow_none=False,error_messages={'required': 'Missing data for required field.','null': 'Field may not be null.','validator_Failed': 'Invalid value.','by_name': 'Invalid enum member {input}','by_value': 'Invalid enum value {input}','must_be_string': 'Enum name must be string'})>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)