zoukankan      html  css  js  c++  java
  • 今天遇到的一个bug,折腾了一早上,不过解决了,还是很高兴

    1、总结出错的问题

    当我在用flask做项目的时候,需要创建表,创建表的时候,我用的是Flask-Migrate组件,直接用python manage.py init ,python manage.py migrate ,python manage.py upgrade这样的命令就可以创建表。

    我的测试表结构是这样的

     1 from sqlalchemy import Column, Integer, String, UniqueConstraint
     2 from sqlalchemy_utils import ChoiceType
     3 
     4 from app import db
     5 
     6 
     7 class UserInfo(db.Model):
     8     '''用户表'''
     9     __tablename__ = "userinfo"
    10     id = Column(Integer(), primary_key=True)
    11     name = Column(String(32), index=True, nullable=False)
    12     email = Column(String(32), unique=True)
    13     __table_args__ = (
    14         UniqueConstraint("id", "name", name="id_username"),  # id和username联合唯一
    15         {
    16             "mysql_engine": "InnoDB",
    17             "mysql_charset": "utf8"
    18         }
    19     )
    20 
    21 
    22 class Group(db.Model):
    23     __tablename__ = "group"
    24     id = Column(Integer(), primary_key=True)
    25     name = Column(String(32))
    26     __table_arg__ = {
    27         "mysql_engine": "InnoDB",
    28         "mysql_charset": "utf8"
    29     }
    30 
    31 
    32 class Xuan(db.Model):
    33     __tablename__ = 'xuan'
    34     types_choices = (
    35         (1,'欧美'),
    36         (2,'日韩'),
    37         (3,'老男孩'),
    38     )
    39     id = Column(Integer,primary_key=True,autoincrement=True)
    40     name = Column(String(64))
    41     types = Column(ChoiceType(types_choices,Integer()))
    model

    出错现象:

    当我python manage.py upgrade的时候

    执行命令的时候会自动生成这样的结构

    解决办法:在没有python manage.py upgrade之前手动解决

     

     然后再次python manage.py upgrade的时候就合适了。。

  • 相关阅读:
    第 4 章 MySQL 安全管理
    第 3 章 MySQL 存储引擎简介
    第 2 章 MySQL 架构组成
    道教的【五行】学说
    【matlab】MTATLAB解线性方程组
    RPolar项目进度记录
    numpy和TensorFlow的函数
    卷积
    腾讯QQ空间超分辨率技术TSR
    混元桩
  • 原文地址:https://www.cnblogs.com/haiyan123/p/8279191.html
Copyright © 2011-2022 走看看