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

on_delete=模型。保护和on_delete=模型。CASCADE在Django模型上做什么?

宋运锋
2023-03-14

我对Django非常熟悉,但最近注意到在_delete=models上存在一个。CASCADEon _delete=models。保护模型的选项,

>

我已搜索了相同的文档,但除了以下内容外,找不到其他内容:

Django 2.0

多对一的关系。需要两个位置参数:与模型相关的类和on_delete选项。要创建递归关系(一个与自身具有多对一关系的对象),请使用models.ForeignKey('self',on_delete=models.CASCADE)。

共有1个答案

都浩淼
2023-03-14

>

  • CASCADECascade删除。Django模拟了DELETE CASCADE上的SQL约束的行为,并且还删除了包含ForeignKey的对象。

    PROTECT通过引发ProtectedError来防止删除引用对象,ProtectedError是django.db.IntegrityError的子类。

    这些内容会被删除,因为一旦更改模型,您需要执行makemigrationsmigrate以查看更改。

  •  类似资料:
    • 我对Django非常熟悉,但最近我注意到在模型上有一个 现在可以用作第二个位置参数(以前它通常只作为关键字参数传递)。它将是Django 2.0中的必需参数。 使用的一个例子是: on_delete做什么?(我猜删除模型后要执行的操作。) 做什么?(文档中的任何提示) 还有什么其他选择(如果我的猜测是正确的)? 这方面的文档存放在哪里?

    • 问题内容: 我对Django非常熟悉,但是最近发现模型中存在一个选项,我在文档中搜索了相同的选项,但找不到以下内容: 在Django 1.9中进行了更改: 现在可以用作第二个位置参数(以前通常只作为关键字参数传递)。在Django 2.0中,这是必填参数。 使用的一个例子是 on_delete是做什么的?(我想如果删除模型,要执行的操作) 怎么办?(文档中的任何提示) 还有其他可用的选项(如果我的

    • 我想修改一个外键值,当它从数据库中删除。所以我看了医生,用on_delete=模型。SET(foo)方法.https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.SET 这是我的模型定义 这是我的方法,被称为删除 然而这里的问题是,我不能将参数传递给这个方法,这就是为什么我不能知道删除了哪个产品。我还试着在

    • 在django模型中使用“on_delete=models.CASCADE”时会发生什么

    • 主要内容:,创建模型,操作数据(CRUD),其他数据操作,,链接模型模型是表示我们的数据库表或集合类,并且其中所述类的每个属性是表或集合的字段。模型是在 app/models.py 中定义(在我们的例子中是:myapp/models.py) 创建模型 下面是创建一个 Dreamreal 模型实例 − 每一个模型继承自django.db.models.Model。 我们类有4个属性(3 CharField和1个整数),这将是表中的字段。 Meta类与db_table

    • 我们现在将要创建的是一个能存储我们博客所有文章的东西。为了达到这个目的,我们将要讲解一下一个被称为objects(对象)的东西. 对象 在编程中有一个概念叫做 面向对象编程 。 它的思想是,与其用无聊的一连串的程序指令方式写程序,我们不如为事物建立模型,然后定义他们是怎样互相交互的。 那什幺是对象呢?它是一个属性和操作的集合。它听起来很奇怪,但我们会给你一个例子。 如果我们想塑造一只猫的模型,我们