python - Django中的派生模型分配
问题描述
B
考虑从模型派生的Django模型A
:
class A(models.Model):
# ...
class B(A):
# ...
现在让模型C
参考A
:
class C(models.Model):
a = models.ForeignKey('A')
让我们有一个c
class的对象C
。
(类的对象c.a = b
在哪里)会做正确的事,分配not of的主键吗?b
B
A
B
解决方案
A
及其派生模型B
具有相同的主键,因为它实现为OneToOneField
.
因此,它是主键A
还是 of 的B
问题没有意义,它是相同的主键值 forA
和 for B
。
简而言之:分配c.a = b
按预期工作,因为只有一个主键b
需要考虑。
推荐阅读
- kubernetes - 如何在两个子图表上应用 custom-values.yaml,这是主图表的一部分
- c# - MSTest 每次都调用构造函数
- php - 有没有办法使用 laravel 和 vue js 上传文件夹?
- node.js - 为什么 null 大于或等于零在 node.js 中为真?
- javascript - 共享相同属性的父子 Web 组件
- mysql - 如何创建一个 MySql 查询以显示多个客户具有个人余额的贷方和借方的运行余额
- javascript - Alt 标记被空格分隔。如何传递文本?
- java - 当我引用复合键时,无法找到具有逻辑名称错误的列
- php - 405 不允许 Github PHP
- android - 选择文本并显示自定义菜单而不是默认上下文菜单