Django模型中的字段分配

时间:2015-08-19 08:48:57

标签: python django django-models

我向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.提前感谢。

2 个答案:

答案 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}"