【发布时间】:2012-08-27 10:12:22
【问题描述】:
我想做的很简单,我想在每次调用视图函数时更新对象的计数变量。
我的模型是这样的:
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))
我确定我在这里忽略了一些东西,或者这不是正确的方法吗?
【问题讨论】:
-
您可能还想看一些代码基础知识,在从函数返回值后,没有代码通过该点执行,因此 val=ob.count 无用
-
@Hedde : 抱歉......我把它放在那里了......我之前正在测试 try 块......
标签: django django-models django-views django-1.3