Py学习  »  Django

在Django 2.1中创建模型后,将字段更新为主键值

Ben • 5 年前 • 1497 次点击  

我有一个名为project的django模型,它有自己的递归外键。

class Project(models.Model):
    project_root_parent = models.ForeignKey('self',on_delete=models.CASCADE, related_name='root_parent',null=True)
    project_parent = models.ForeignKey('self', on_delete=models.CASCADE, related_name = 'parent',null=True)

这是我想要的功能:

  • 如果项目没有父项目,则字段设置为 已创建对象主键。

  • 如果项目没有根父项目,则字段设置为 创建的对象主键。

理想情况下,我希望将字段的默认值设置为主键。 如果这不可能,那么我需要能够在生成主键并在Django中实例化模型之后更新该值。

我看过重写save方法或使用 post_save 但我不确定这些方法是否正确。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/38943
 
1497 次点击  
文章 [ 1 ]  |  最新文章 5 年前