我向PictureBook模型添加了一个方法,
class PictureBook(models.Model):
license = models.CharField(max_length=200, unique=True)
activate_count = models.IntegerField(default=0)
# check if the license is available.
def activate(self, license=None):
if self.activate_count != 2 and self.license == license:
import pdb; pdb.set_trace()
self.activate_count += 1
return True
else:
return False
然后在activate()
中致电views.py
,我已添加
import pdb; pdb.set_trace()
然后我看到输出,
-> self.activate_count += 1
(Pdb)
我输入' c',程序继续。我在admin中检查值activate_count
,它应该是1,但它仍然是0.提前感谢。
答案 0 :(得分:0)
您没有保存模型实例。
答案 1 :(得分:0)
您需要在增加self.save()
之后添加def activate(self, license=None):
if self.activate_count != 2 and self.license == license:
import pdb; pdb.set_trace()
self.activate_count += 1
self.save()
return True
else:
return False
,以便它实际保存您的更改:
ValidationExpression = "\d{5}"