No migrations to apply. django同步数据库失败


django2 同步数据库  
# app models python manage.py makemigrations your_app_name python manage.py migrate your_app_name # django models python manage.py makemigrations python manage.py migrate

 

有时同步app models时,新的修改, 无法通道到数据库中。

No migrations to apply.

方案1:

  将数据库表全部删除, 重新同步。[略]

方案2:

  修改your_app_name/migrations/0001_initial.py 或其它文件

  将其中与新的修改相关的代码删除,重新makemigrations、migrate

 

如新添加了一个数据库表TabAuthority

initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel( name='TabAuthority',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('Name', models.CharField(max_length=64, verbose_name='权限名称')),
                ('ColName', models.CharField(max_length=64, null=True, verbose_name='列名')),
                ('Desc', models.CharField(max_length=64, null=True, verbose_name='权限描述')),
            ],
            options={
                'verbose_name': '权限',
                'verbose_name_plural': '权限', }, ),
        migrations.CreateModel(
            name='BVTBlackWhiteList',
.....

将其中标红的代码删除, 然后运行

python manage.py makemigrations your_app_name
python manage.py migrate your_app_name

完毕 !!!

 

其实这时候再次运行

python manage.py makemigrations your_app_name

,会在migrations目录下生成一个新的py文件,该文件中包含有刚才删除的代码TabAuthority

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM