[Flask_sqlalchemy] KeyError: 检索时对ChoiceType的类型限制

下面的代码为源代码,使用flask_migrate对数据库进行生成迁移操作。并且经历过了MySQL与PostgreSQL的测试……(艰难)

status_choices = [
    (0, 'start'),
    (1, 'end')
]
task_status = db.Column(ChoiceType(status_choices, db.Integer()), default=0)

在对表query时却发现始终会出现KeyError('0'),最终在轮子里print发现迁移的时候,即使是ChoiceType里面声明该字段是整数数据库中的字段类型是'varchar(255)',具体表现为搜寻时在‘site-packages/sqlalchemy_utils/types/choice.py’下面ChoiceTypeTml索引时也是采用的字符串类型进行搜寻,在process_result_value方法里面print一下就能看到了,这个整数声明如果用这个迁移工具就是个搞笑的存在吗……

class ChoiceTypeImpl:
    """The implementation for the ``Choice`` usage."""

    def __init__(self, choices):
        if not choices:
            raise ImproperlyConfigured(
                'ChoiceType needs 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值