我想做的很简单我想在每次调用视图函数时更新对象的count变量。
我的模特是这样的:
class Url(models.Model):
#some vars here
count=0
def __unicode__(self):
return self.urlx
def incr(self):
self.count+=1
我的观看代码就像这样
@transaction.autocommit
def redirect(request,key):
if(key):
key='/'+key
try:
ob=Url.objects.get(urlx=key)
ob.incr() #not working
ob.save() #not working
return HttpResponseRedirect(ob.url)
val=ob.count
except Url.DoesNotExist:
key="Sorry! couldn't find that url"
return render_to_response('redir.html',{},context_instance=RequestContext(request))
我确信我在这里忽略了一些东西,或者这不是正确的方法吗?
答案 0 :(得分:3)
由于你错过了其他vars",你不清楚你是否意识到Django模型字段必须是字段 - 也就是{{ 1}},models.CharField
等等。放置models.IntegerField
只会创建一个不会在数据库中保留的类变量。您可能只想要count=0
。