首先呢?您想要添加固定號碼的號碼是?如果是這樣,爲什麼你必須把它存儲在數據庫中呢?您可以創建你的模型的方法,它作爲一個屬性,增加的數量,當你需要它:
class ModelX(models.Model):
...
def special(self):
num = 1000
return self.id + num
如果你真的需要這個存儲到您也許需要做兩個數據庫訪問,因爲丹尼爾的分貝說,你得到的ID後對象存儲在數據庫中。
您可以修改save
方法來這樣一句:
def save(self, *args, **kwargs):
num = 1000
self = super(MyModel, self).save(*args, **kwargs)
self.special = obj.id + num
self.save()
注意,這可能只是在做這第一次的對象在數據庫中創建進行優化,其中self.special
是根據NULL
或默認值你如何宣佈你的模型。
def save(self, *args, **kwargs):
num = 1000
self = super(MyModel, self).save(*args, **kwargs)
# self.special is null, (creating the object in the db for the 1st time)
if not self.special: # or if self.special != defaultvalue (defined in MyModel)
self.special = obj.id + num
self.save()
我希望這有助於。