【发布时间】:2016-10-23 03:13:09
【问题描述】:
作为 Django 的初学者,我尝试制作一个简单的应用程序,该应用程序可以通过 Http 响应查看内容的次数。
我创建了一个新的Counter 模型,并在里面添加了 IntegerField 模型count。
class Counter(models.Model):
count = models.IntegerField(default=0)
def __int__(self):
return count
在视图中,我从Counter() 类中创建了一个变量counter,并尝试将+1 添加到counter.count 整数,但是当我尝试保存时,它会给我一个整数不能为的错误已保存。
所以我尝试保存课程:
def IndexView(response):
counter = Counter()
counter.count = counter.count + 1
counter.save()
return HttpResponse(counter.count)
这个方法,会一直显示1,重载后无法改变。
如何正确更改IntegerField 模型,以便在每次查看后更新它,并且即使重新加载服务器也会保存?
【问题讨论】:
-
每次执行
Counter()时,都会在数据库中创建一个新对象,其中count字段的值将为0,并且将其加一。您需要再次获取相同的对象。
标签: python django django-models models