django迁移表不存在

时间:2015-04-25 05:23:44

标签: python django migration

我已将新模型添加到我的应用中。我做了迁移,在我的迁移中,我可以看到代码来创建我的模型,如:

operations = [
    migrations.CreateModel(
        name='Blog',
        fields=[
            ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
            ('title', models.CharField(max_length=120)),
            ('body', models.TextField()),
            ('post_date', models.DateTimeField(default=django.utils.timezone.now)),
            ('like', models.IntegerField(default=0)),
            ('created_by', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
        ],
        options={
        },
        bases=(models.Model,),

现在当我python manage.py migrate时,它会给我一个错误,说表不存在..

为什么我收到此错误。应该已经迁移了吗?如何解决这个问题?

1 个答案:

答案 0 :(得分:8)

  1. drop tables,
  2. 在model.py中注释掉模型,
  3. 如果您使用的是django版本> = 1.7:
  4.   

    python manage.py makemigrations

         

    python manage.py migrate --fake

    否则

      

    python manage.py schemamigration someapp --auto

         

    python manage.py迁移someapp --fake

    1. 在models.py
    2. 中评论您的模型
    3. 这次没有 - 假
    4. 参考:https://stackoverflow.com/a/27583836/4359237