2017-02-02 12 views
0

Dajngo(1.10)テンプレートに隠れたフォームがあり、データをviews.pyに渡したいと思います。私は通常の方法に従ったが、データを取得した結果は何もない。あなたは何が間違っていたのか、それを修正する方法をアドバイスできますか?どうもありがとう。コードは、参考のために以下の通りです:DjangoビューPOSTデータを取得

テンプレート:

 <form style="display: hidden" action="/exRpt/" method="POST" id="#form99"> 
      {% csrf_token %} 
      <input type="hidden" id="var199" name="var199" value=""/> 
      <input type="hidden" id="var299" name="var299" value=""/> 
     </form> 
<script> 
     $(document).on('click', '.exWord', function(){ 
      $("#var199").val("ExWord"); 
      $("#var299").val("1,4,10"); 


      $("#form99").submit(); 
      window.location.href = "/exRpt/" 
     }); 
</script> 

views.py:

def exRpt(request): 
    in_type = request.POST.get('var199') 
    in_news = request.POST.get('var299') 
    ... 
    response = HttpResponse(f.getvalue(), content_type='application/vnd.ms-word') 
    response['Content-Disposition'] = 'attachment; filename=SelectedNewsReport.docx' 
    return response 
+0

あなたのスクリプトはそのコードで実行されていないと思いますので、フォームはそれらの値を取得していません。 –

+1

フォームのid: '

' – Alasdair

+0

@Alasdairに '#'を含めないでください。あなたのJSコードはフォームを選択していないので、ビューに投稿していません。これは、あなたの 'window.location.href'ステートメントからのgetリクエストです。このステートメントは、送信が正しく機能している場合には必要ありません。あなたのview関数で 'request.method'を出力することを確認するために。 @alasdairのようにIDを更新すれば正しく動作するはずです。 – sundance

答えて

0

それは彼らのあなたがすべきchangone同じディテールでsame inputなり、その後javascriptセットでますval。

関連する問題