2011-05-18 59 views
1

我有一個POST提交,我需要通過變量'count'當頁面重新加載。我目前使用的是render_to_response,但我認爲這是錯誤的方法(儘管它目前正在運行)。這是我的代碼 -Django重定向傳遞變量

def email(request): 
    count=0 
    emails = EmailList.objects.order_by('network') 
    networks = Network.objects.all() 
    form = EmailListForm(request.POST) 
    if request.method == 'POST' and form.is_valid(): 
     if form.cleaned_data.get('domain'): 
       EmailList.objects.create(domain=form.cleaned_data['domain'], network=Network.objects.get(network=request.POST['domain_network'])) 
       return redirect('.') # should be using a redirect() ??? 
     if form.cleaned_data.get('email'): 
      for x in form.cleaned_data.get('email'): 
       EmailList.objects.create(email=x, network=Network.objects.get(network=request.POST['email_network'])) 
       count += 1 
      # this next line is the one I'm asking about 
      return render_to_response('email_add.html',{'networks':networks, 'emails':emails, 'form':form, 'count':count}, context_instance = RequestContext(request)) 
return render_to_response('email_add.html',{'networks':networks, 'emails':emails, 'form':form}, context_instance = RequestContext(request)) 

是否需要替換render_to_response?如果是這樣,那麼新的代碼行應該是什麼?

回答

0

無論如何,您都可以簡單地通過count。你不需要單獨的render_to_response s。在做任何事情之前,測試它在模板中是否爲非零。