当前位置: 首页 > 知识库问答 >
问题:

将django从1.8升级到2.2.0

劳灵均
2023-03-14

我正在将我的django项目从1.8升级到2.2.0(使用virtualenv中的Python 3.6)。我做了以下更改。

  1. 将on_delete添加到所有外键字段
  2. 将url反向导入更改为来自django。URL反向导入
  3. 在所有应用程序的url文件中包含路径/re_path而不是url
  4. 将设置文件中的MIDDLEWARE_CLASSES导入更改为MIDDLEWARE={}

我试图运行服务器,但它仍然显示“TypeError:init()缺少1个必需的位置参数:'on_delete',它指向/usr2/santhosh/myproject/myapp/migrations/0002_abc.py

我现在应该怎么做?我需要从应用程序中删除所有迁移文件并重新运行python manage.py 迁移还是什么?帮帮我你知道。

共有2个答案

葛昱
2023-03-14

该消息表示您忘记更改 FK。使用它来了解什么是模型。

`cat [your_model].py | egrep -i --color -o 'models\.ForeignKey\((.*?)'   | egrep -i -v 'on_delete'`, 

不要忘记在每种关系中都这样做,不仅仅是外键类型,一对一也是如此...等等。

左丘源
2023-03-14

迁移文件仍然只是python文件,所以您也需要更新这些文件中的所有引用。

如果您想要一种简单的方法来执行此操作,请查看在整个应用程序中设置on_delete的简单方法

 类似资料:
  • 我面临的问题与更新facebook SDK从4.7到4.35 实现'com。脸谱网。android:facebook android sdk:4.35.0' 错误输出为 无法复制C:\用户\泰\下载\项目\karufx-android-更新\app\构建\中间体\转换\desugar\调试\138.jar备份文件夹,构建将继续,但下次修改此文件时将导致冷交换。 和 意外输入:ImmutableJa

  • 我试图升级我目前的java项目,运行在1.6到1.8,但程序编译良好如何曾经当我去http://localhost:8080/MyProject/login.jsp-我得到错误。 我正在使用eclipse luna,我将java\u HOME更改为1.8,将eclipse项目facets更改为1.8,并更新了javax。servlet api=3.1.0。 堆栈跟踪 无布局。jsp 我用常春藤做依

  • 我需要知道如何将我的Weblogic应用程序服务器从版本1升级到版本2。我的操作系统是Windows 7 64位。我是新来的,其他人安装了weblogic,所以我试图自己安装它,但它给我错误 C: \用户\用户\下载 所以我用7个拉链拉开了罐子的拉链,现在插入器已经开始了,这是正确的方法吗?

  • 为了帮助大伙儿升级,我们为现在的Apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES文件中得到更多信息。 这篇文档仅仅描述了从版本 2.0 到 2.2 的变化,如果你是从1.3版进行升级的,请查考从1.3升级到2.0文档。 编译时配置的改变 编译过程与2.0版本非常相似,你曾经使用过的configure命令行(在安装目录下的build/co

  • 为了帮助大伙儿升级,我们为现在的Apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES文件中得到更多信息。 编译时配置的改变 Apache现在使用autoconf和libtool系统来进行安装进程的配置。这个系统用起来很像Apache1.3的APACI系统,但并不相同。 在普通的选择编译模块的基础上,Apache2.0把请求进程的主要部分移到

  • WARNING 本升级指南仅适用于 2.2 版本升级至 2.3 版本,如果你并非 2.2 版本,请查看其他升级指南,Plus 程序不允许跨版本升级! 更新代码 预计耗时: 2 小时 这是你自我操作的步骤,确认将你的 2.2 版本代码升级到 2.3 版本,如果你做过一些自定义修改可能会出现代码冲突,你需要解决。 升级依赖 预计耗时: 3 分钟 进入 Plus 程序目录,执行: composer up