Django低级缓存视图

我有一个索引视图来验证包含各种数据的表单。 尽管thankyou.html页面没有复杂的计算来终止服务器,但是如果thankyou.html已经低级缓存,我想渲染一个不同的html页面。 说实话,我不知道通过它的关键是什么...这是代码。

def索引(请求):

form = UserForm()

message ='数据不正确!'

如果request.method =='POST':

form = UserForm(request.POST)

如果form.is_valid():

尝试:

User.objects.get(代码= form.cleaned_data [ '代码'])

除(KeyError,ObjectDoesNotExist)外:

u = User(lastname = form.cleaned_data ['lastname'],surname = form.cleaned_data ['surname'],address = form.cleaned_data ['address'],email = form.cleaned_data ['email'],phone = form.cleaned_data ['phone'],code = form.cleaned_data ['code'],)

u.save()

返回HttpResponseRedirect('/ thanks /')

#return重定向('thankyou')

返回render_to_response('index.html',{'message':message,'form':form},context_instance = RequestContext(request))。

我想这是我应该低级别缓存它的方式:

如果form.is_valid():

key = ???

cached_html = cache.get(key)

尝试:

User.objects.get(代码= form.cleaned_data [ '代码'])

除(KeyError,ObjectDoesNotExist)外:

u = User(lastname = form.cleaned_data ['lastname'],surname = form.cleaned_data ['surname'],address = form.cleaned_data ['address'],email = form.cleaned_data ['email'],phone = form.cleaned_data ['phone'],code = form.cleaned_data ['code'],)
u.save()

如果不是cached_html:

cached_html = render_to_response('ty.html',{},context_instance = RequestContext(request))

cache.set(key,cached_html,time_until_midnight())

返回HttpResponseRedirect('/ thanks /')

#return重定向('thankyou')


我认为在这种情况下,你应该使用字符串('thankyou'+ form.cleaned_data ['code'])作为键

链接地址: http://www.djcxy.com/p/9671.html

上一篇: Django low level cache views

下一篇: Saving form data rewrites the same row