我创建了一个模型“ PurchaseRequest”。 pk是自动创建的。现在,我创建了一个charfield列,该列将在保存过程中存储“ PR#+ pk”之类的值。
def save(self, force_insert=False, force_update=False, using=None,
update_fields=None):
self.pr_number = 'PR #' + str(self.id)
super(PurchaseRequest, self).save()
但是,它返回PR#None。一旦我编辑并保存它,它将返回正确的答案,因为显然现在它获取了id。
答案 0 :(得分:0)
您需要先保存对象,然后设置PR字段,然后再次保存。
您可以执行以下操作:
def save(self, **kwargs):
super(PurchaseRequest, self).save(**kwargs)
self.pr_number = 'PR #' + str(self.id)
super(PurchaseRequest, self).save(**kwargs)