django执行migrate命令无法创建表

django执行migrate命令无法创建表

错误表现

django执行migrate命令后不报错,也不创建数据表

python manage.py migrate

原因分析和解决方法

models中设置了错误的meta属性

class InnerStationInfo(models.Model):
    company = models.CharField(max_length=255, blank=True, null=True)
    
    class Meta:
        managed = False

如果设置了managed=False,则迁移数据表的时候不会执行创建表的动作。一般用于数据库中已经有对应的表(通过其他方式已经创建并存在)。这种情况下,只要把managed=True即可。

数据表django_migrations中存在迁移记录

如果设置了managed=True后依然无法创建数据表,则尝试打开表django_migrations,将其中关于本app的数据条删除,再尝试迁移。

image-20210906143735203
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容