【详细解读】关于生成迁移文件的种种小问题!Running migrations: No migrations to apply等问题,请仔细阅读~

Django学习中遇到的问题(1)django migration No migrations to apply (ven) PS C:\Users…\Desktop\pytest\test5> python manage.py makemigrations Migrations for ‘booktest’: 0001_initial.py: - Create model AreaInfo - Create model PicTest (ven) PS C:\Users…\Desktop\pytest... 阅读详情

我们都知道生成迁移文件主要是执行两条命令:

// 这里一般都会成功生成迁移文件
python manage.py makemigrations

在这里插入图片描述

但是往往我们不是新写的 models模板文件,而是在之前的基础上,新增的各种表,所以才会在生成表的时候,出现各种错误。

  • 就像上面的可以看到,生成了 PicTest 和 AreaInfo 两个类的迁移模板类。
  • 但是我新写的模板类,只有 PicTest 一个!!注意这是重点!

下面贴出我的 模板文件

from django.db import models

# Create your models here.

class AreaInfo(models.Model):
    """地址模型类"""
    # 地区名称
    atitle = models.CharField(verbose_name='标题', max_length=20)  # 通过verbose_name='标题' ,更改属性显示的标题为 '标题'

    # 自关联属性
    aParent = models.ForeignKey('self', null=True, blank=True)

    def __str__(self):
        # django 后台管理中默认显示的是 类名 object ,想要修改就这样:
        return self.atitle

    def title(self):
        return self.atitle
    title.admin_order_field = 'atitle'  # 使这一列,也具备点击标题进行排序的能力
    title.short_description = '地区名称'  # 指定标题的名称,不要是默认的 title

    def parent(self):
        if self.aParent is None:
            return ''

        return self.aParent
    parent.short_description = '父级地区名称'

# 持有这个类是新建的,其他都已经在数据库中生成表了。
class PicTest(models.Model):
    """上传图片"""
    goods_pic = models.ImageField(upload_to= 'booktest')  # 指定图片上传的位置,以media 目录看起

下面要说的就是,大家要会看报错,出现一堆错误,应该集中注意力到哪里,才能解决问题:

在这里插入图片描述

  • 首先将注意力集中在箭头所指的地方:
    意思就是,你的迁移文件根本没有被迁移!!!注意了,下面说解决方法:
  • 下面开启数据库,django是如何管理我们的生成文件的呢?
  • 在这里插入图片描述
  • 注意看这张表
  • select * from django_migrations
  • 在这里插入图片描述
  • 前面的app 就是对应的你的应用的名字,后面的name是它对应的迁移文件
  • 当你做迁移时,django会自动的来这个表里面进行比对,当在这个表里面找到对应的app时 ,django就不会再次生成这个迁移文件了!
  • 所以重点来了,可以看到我们之前生成的迁移文件,就叫做 0001_initial.py ,此时想要将次迁移文件生成表,就会报错,No migrations to apply!!!,因为已经有一个叫 booktest app 对应着 0001_initial,所以django在你执行生成表命令的时候,默认 0001_initial 迁移文件已经生成过! 所以不会再次帮你生成一次,就会报错,找不到。

  • 这个booktest 这是我们之前做迁移文件,留下来的记录!!

解决办法:

  • 1. 把对应的迁移文件记录给删除掉
  • delete from django_migrations wehere id=10; // 这个id 对应自己的记录!!!
  • 切记! 哪个冲突删哪个,千万不要不加条件!!把整个表的数据都删除了,清空之后,你在做迁移文件的时候,就会有一堆的错!!!!

  • 再次执行生成表的命令:
  • python mange.py migrate
  • 会发现问题解决了:
    在这里插入图片描述
    但是可以看到上面 还有新的错误:下面解决它
    在这里插入图片描述
  • 这个打开迁移文件就可以发现:django给我们生成了两张表模板类,
  • 在这里插入图片描述
  • 但是我们只定义了一个!! PicTest类,所以,django还想帮我们生成 Booktest_areainfo这张表,但是它已经存在了,就会报这样的错误! 解决方法,删除掉,只留下一个新写的类的迁移文件模板。
  • 在这里插入图片描述
  • 下面再次执行,生成表,就不会有问题啦!
    在这里插入图片描述

下面还会接着告诉你:

在这里插入图片描述

  • 大概意思即是 bookinfo 和 heroinfo 在项目中没有对应的模型类,问你是否删除掉他们
  • 答案:肯定是不删!! 因为那可能是其他项目中建立的数据表,非常重要可能。所以选择 no。就好了。

2(第二种解决方法). 把你的迁移文件改一个名字,使它不冲突记录中的名字**

好了,差不多就介绍到这里了! ,以后有啥问题还会继续总结,希望大家一起学习,有错误的地方,可以在评论区指出,或者有啥新知识,也可以说出来~~

【已解决】django报错No changes detected和No migrations to apply错误。django修改model 更新数据表报错。 阅读详情

相关推荐

安卓模拟器绕过检测全解析:雷电、MuMu、蓝叠、逍遥、夜神与WSA完整指南

随着手机游戏和应用的普及,越来越多的用户选择在PC上通过模拟器来运行安卓应用。然而,许多应用和游戏为了防止作弊或出于安全考虑,会检测是否运行在模拟器环境中。本文将详细介绍各大主流模拟器的检测绕过方法,帮助用户在电脑上流畅体验各类安卓应用。1. 获取模拟器系统镜像2. 使用ROM厨房工具修改系统文件3. 替换模拟器的系统镜像雷电模拟器:适合游戏,推荐使用MAGISK + EdXposed方案MuMu模拟器:适合中度游戏,推荐太极框架蓝叠模拟器:适合国际应用,推荐MAGISK方案逍遥模拟器。

专注技术分享 3万+

数据库创建表时出现:Running migrations: No migrations to apply.

之后再在Tools中的run manage.py task 中输入makemigrations 和migrate就可以正常生成表格了。解决方法:删除数据库表django_migrations中对应的刚才生成的表格的字段名字。

m0_69848319的博客 1341

双足肌肉骨骼机器人

Clone Alpha的技术突破标志着人类进入生物-机械融合的新纪元,但其影响远超技术范畴。从伦理框架重建(如拉马克进化算法中的知识传递机制)到经济模式革新(如UBI应对机器人失业潮),需全球协作制定前瞻性政策。若放任技术无序扩张,人类社会或将面临“能力断层”与“控制权丧失”的双重危机;反之,若以人类福祉为核心导向,仿生机器人亦可成为弥合残障歧视、提升整体文明层级的钥匙。当下选择,将决定人类究竟是技术的创造者,还是被重构的客体。

百态·数智思维 | 聚焦大数据、量化与未来AI 985

django:执行迁移失败问题

问题描述: 第一次执行迁移成功且数据库生成了表,接着,我把pycharm中的迁移文件、数据库表直接删掉,重新执行迁移,发现失败,日志如下: Running migrations: No migrations to apply. (venv) D:\360MoveData\Users\lenovo\Desktop\django_auto_test>python manage.py makemigrations study Migrations for 'study': study\mig.

weixin_43431593的博客 1万+

TNS-12516及ORA-12516错误解决

在客户端进行sqlplus连接报错如下: ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程序 在/home/oracle/product/10.2.0/db_1/network/log/listener.log中查看到错误如下: TNS-12516: TNS:listener could not find available handler with matchin

KEL 2万+

瑞芯微RV1126平台人脸识别模型转换实战:从ONNX到RKNN的完整流程

本文详细介绍了在瑞芯微RV1126平台上,将人脸识别模型从ONNX格式转换为RKNN格式的完整实战流程。内容涵盖模型结构分析、RKNN-Toolkit环境搭建、量化数据集准备、核心转换脚本编写与参数解析,以及在设备端的部署测试与性能调优,旨在帮助嵌入式AI开发者高效完成模型转化,提升边缘设备上的人脸识别应用部署效率。

o5p6q的博客 570

Running migrations: No migrations to apply.(django不能创建数据库中的表的问题)

Running migrations: No migrations to apply.(django不能创建数据库中的表的问题)

BusyMonkey 1402

RK3568笔记五十四:SORT实时目标追踪

YOLOv5具备目标检测的功能,把视频分解成多幅图像并逐帧执行时,如果视频帧中有多个目标,如何知道一帧中的目标和上一帧是同一个对象就是目标跟踪的工作。DeepSort是实现目标跟踪的算法,从sort(simple online and realtime tracking)演变而来,使用卡尔曼滤波器预测所检测对象的运动轨迹,匈牙利算法将它们与新的检测目标相匹配。结合YOLOv5和DeepSORT可以在实时场景中实现高效的目标检测和跟踪。

788

django进行数据迁移时建表失败,解决Running migrations: No migrations to apply的问题

然后查看数据库表的时候,发现django_migrations这张表里,记载着你的所有迁移记录,然后把这张表删了,再执行迁移操作,果然建表成功了。在网上搜索了许多解决的方法,比如整个删除migrations文件,或者除了__init__.py文件外全删除,并没有奏效。

MercyFreedom的博客 522

基于 STM32 的手持式安检金属探测器设计与实现

【代码】基于 STM32 的手持式安检金属探测器设计与实现。

weixin_42300449的博客 899

WS2812和homeassistant握手

本文学习了WS2812和homeassistant握手,后期会分享更多有趣物联网的操作从而实现对外部世界进行感知,充分认识这个有机与无机的环境,科学地合理地进行创作和发挥效益,然后为人类社会发展贡献一点微薄之力。...

vor234的博客 811

Running migrations: No migrations to apply

django项目中迁移表时 报了这么一个错误 项目是别人发我的.数据库使用了mysql(本来是sqlite3 我改成了mysql) 然后迁移数据库 就是一直报这个错 解决办法 第一步 找到app下的migrations文件夹 第二步 删除文件夹下的文件 init.py 不要删除 第三步 把你mysql数据库中 django表删除 最后 再重新迁移 就完成了 ...

墨茶Official 愿你在二次元有吃不完的草莓 饺子(ㄒoㄒ) 2379

散户渡劫指南:从炼气期到化神期的量化之路

经常有人问我普通人怎么学习量化交易,我就在想怎么学了量化就不是普通人了吗,可能他的意思是类比修仙,量化素人如何修炼进阶,今天就将量化学习每个阶段均对标修仙境界的核心能力与心法要诀一一介绍,助你从“交易凡人”蜕变为“量化金仙”。

木头大左的博客 1338

No migrations to apply 问题解决方法

当我们创建数据库,然后进行数据迁移时,发现表错误,我们删除了数据库中的表,同时又删除了migrations中的迁移文件,这时候我们进行迁移会报错:No migrations to apply,最暴力最简单的操作就是删库跑路,但如果不想跑路,解决措施如下: 先执行python manage.py makemigrations 信息如下: 再执行python manage.py migrate 就...

weixin_43996959的博客 9412

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Django 数据库建表的时候 No migrations to apply原因出现和解决

1、首先,这种原因的出现是因为我之前已经成功在数据库中建好了表,后面数据库直接删掉了,接下来我尝试着重新删掉执行命令生成的0001_initial.py,再重新按照步骤去执行下面的命令: python manage.py makemigrations front python manage.py sqlmigrate front 0001 python manage.py migrate ...

茕夜 4万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

No migrations to apply

三个问题,出现在修改models模块的类、字段时,迁移数据时。 问题一:执行python manage.py migrate报错No migrations to apply. 解决办法: 1.删除app项目找那个migrations下的文件记录 2.在django_migrations中删除对应app项目名称的记录(只删对应项目名称!) 3. 执行python manage.py makemigrations 4.执行python manage.py migrate 执行第三步返回成功

qq_22942685的博客 3047

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

015-django migration No migrations to apply

Django migration No migrations to apply 如图,这个数据表中app(应用名)为booktest的对应的已存在的name(迁移文件名) 如果后续建立的迁移名称与图中的迁移文件name相似, 则Django会认为该表已建立且已执行迁移,因此造成后续迁移时No migrations to apply。 有两种方案可以解决; 一、数据库中执行 delete from django_migrations where app=‘your-app-name’; 然后执行迁移 pyt

欢迎来到编程小栈 401

django 迁移表时Running migrations: No migrations to apply.

我遇到的问题是: 我新建了一个模型类,在创建数据库表的时候,报了一个上一个模型类已存在的问题 解决办法:同步数据库 python manage.py migrate 注册应用名字--fake 官方原话: The “initial migrations” for an app are the migrations that create the first version of that app’s tables. Usually an app will have one initial migratio

qq_51014805的博客 756

django框架问题:python No migrations to apply无法生成表解决方法

第一步:    进入数据库,找到django_migrations的表,删除该app名字对应的所有记录。    python   manage.py    dbshell    use <your_db_name>    delete from django_migrations where app='<your_app_name>';     第二步:     删除该ap...

爱千岛 1101

Django表不能创建NO migrations to apply

表已经创建好的时候,要对表进行修改,在models里面改完表的时候,运行迁移文件的时候出现了 NO migrations to apply 在网上查询大量的解决办法总结如下: 删除该app名字下的migrations下的__init__.py等文件。 进入数据库,找到django_migrations的表,删除该app名字的所有记录 DELETE FROM django_migrations...

qq_41056152的博客 226

no migrations to apply

当我们修改了模型,然后使用python manage.py makemigrations, python manage.py migrate 出现如下图所示: 查看数据库中的django_migrations,如果对应的app中name的值存在0001_initial(app中的migrations文件夹对应着0001_initial.py),则说明已经被迁移了,所以不会再迁移。 此时我们有两个...

凌风飞扬的专栏 541

在执行迁移时遇到No migrations to apply的解决方法

在执行迁移时遇到No migrations to apply的解决方法

Continue_Python的博客 4209

解决django Running migrations: No migrations to apply

标题Running migrations: No migrations to apply. ![报错截图](https://img-blog.csdnimg.cn/20201022162855129.png#pic_center 解决方法:不仅要删除migrations下面的文件,还要打开 __pycache__里面除了init的文件,记住了吗铁子们 ![删两个地方 话说做完这个东西之后再也不想碰django的任何!!!报错搞得头大死了 ...

songbb00的博客 942
上一篇: 【简单的配置】配置redis
下一篇: redis_启动服务端和客户端:
我是py呀
博客等级 码龄8年 205粉丝 130原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值