Django `处理继承实例时,pk`和'id'不相同
我知道Django `处理继承实例时,pk`和'id'不相同,django,Django,我知道pk更可取,因为id是内置的。它们是相同的 但是,对于使用继承的复制实例,区分它们并不复杂: 在官方教程中 在这里,pk与id 如何理解它?的操作为您的模型提供了一个id。这将填充您的id和pk属性 通过强调两者都将被设置,文档可能会更完整。保存模型后的“id”是什么?您启发了我@munk,请您将简短的评论发送给我回答。如果我将它们的顺序颠倒为:django_blog.id=None,这有关系吗,django_blog.pk=None我不这么认为,但我建议你自己试试。 #Due to ho
pk
更可取,因为id
是内置的。它们是相同的
但是,对于使用继承的复制实例,区分它们并不复杂:
在官方教程中
在这里,pk
与id
如何理解它?的操作为您的模型提供了一个id。这将填充您的id
和pk
属性
通过强调两者都将被设置,文档可能会更完整。保存模型后的“id”是什么?您启发了我@munk,请您将简短的评论发送给我回答。如果我将它们的顺序颠倒为:
django_blog.id=None,这有关系吗,django_blog.pk=None
我不这么认为,但我建议你自己试试。
#Due to how inheritance works, you have to set both pk and id to None:
django_blog.pk = None
django_blog.id = None
django_blog.save() # django_blog.pk == 4