zoukankan      html  css  js  c++  java
  • django在model中添加字段报错

    在以下类中添加 description 字段后,

    class Colors(models.Model):
        colors = models.CharField(u'颜色', max_length=10)
        description = models.CharField(u'描述', max_length=10)
        def __str__(self):
            return self.colors
    

     

    执行以下初始化数据库的步骤,报错

    C:PycharmProjectsHelloWorld>python manage.py makemigrations
    You are trying to add a non-nullable field 'description' to colors without a def
    ault; we can't do that (the database needs something to populate existing rows).
    
    Please select a fix:
     1) Provide a one-off default now (will be set on all existing rows with a null
    value for this column)
     2) Quit, and let me add a default in models.py
    Select an option: 
    

    这个可能是之前已创建了表中的一条记录,之后模型中增加了一个非空的字段,但是原来已经存在的记录没有这个值

    解决方案1:

    修改字段为允许为空  null=True

    class Colors(models.Model):
        colors = models.CharField(u'颜色', max_length=10)
        description = models.CharField(u'描述', max_length=10,null=True)
        def __str__(self):
            return self.colors
    

      

    解决方案2:

    先删除整个migrations文件夹,再执行python manage.py makemigrations,和python manage.py migrate命令

  • 相关阅读:
    GNU Linux中的SO_RCVLOWAT和SO_SNDLOWAT说明
    Spring.NET 的IOC(依赖注入)
    c# post 数据的方法
    C# .NET中的 反射的应用
    C# .NET修改注册表
    DataTabel DataSet 对象 转换成json
    sqlserver 行转列
    asp.net 二级域名session共享
    Asp.Net集群中Session共享
    微软企业库DBBA的研究
  • 原文地址:https://www.cnblogs.com/amoyzhu/p/7591733.html
Copyright © 2011-2022 走看看