2010-12-13 64 views
0

我有一個表單,用戶選擇年份和性別,然後點擊提交。有了這些值,我正在計算數字,繪製一些圖片等等。到目前爲止,一切都很好。
我想要做的是在documentation的幫助下將這些圖片和數據打開成PDF文件。如何在提交後重定向表單

問題是,當他點擊提交按鈕時,我無法重定向用戶。模板中的代碼如下:

<form action="" method="post"> 
    <div class="report"> 
     {% for field in form_year %} 
      {{ field }} 
     {% endfor %} 
    </div> 
    <div class="report"> 
     {% for field in form_gender %} 
      {{ field }} 
     {% endfor %} 
    </div> 
    {% ifequal id_year None %}{% ifequal id_gend None %} 
     <p><input type="submit" value="submit"/> 
    {% else %} 
     <p><input type="submit" value="submit" onclick="window.open('{% url pdf id_year id_gend %}'),'Ratting','width=700,left=50,height=600,0,status=0,scrollbars=1,');"/></p> 
    {% endifequal %}{% endifequal %} 

但選擇一些變量後,當我點擊提交,輸入按鈕消失,並且不打開任何PDF文件。
我需要輸入按鈕才能夠支持超鏈接,他必須能夠保存用戶選擇的值。
任何想法來解決這個問題?

感謝

回答

1

所以我必須做的是這樣的:

在允許用戶選擇數據視圖:

form_year = YearForm() 
form_gender = GenderForm() 
return render_to_response('report.html', 
          { 
           'form_year': form_year, 
           'form_gender': form_gender, 
           }) 

在打開的PDF中的觀點:

if request.method == 'POST': 
    form_year = YearForm(request.POST) 
    form_gender = GenderForm(request.POST) 
    if form_year.is_valid() and form_gender.is_valid(): 
     id_year = form_year.cleaned_data['years'] 
     id_gend = form_gender.cleaned_data['gender'] 
     filename = image #then insert this image into pdf file 

和表格,轉化爲模板:

<form action="./pdf" method="post"> 
    <div> 
     {% for field in form_year %} 
      {{ field }} 
     {% endfor %} 
    </div> 
    <div> 
     {% for field in form_gender %} 
      {{ field }} 
     {% endfor %} 
    </div> 
    <p><input type="submit" value="submit"/></p> 
</form>