2016-08-29 12 views
0

私はこのようなhtmlフォームを持っています。Django - POSTから選択項目を取得

{% url 'myapp:myapp_submit' as submit %} 

<form name='main' method="POST" action={{submit}}> 
{% csrf_token %} 
<select class='form-control' size=10 id="test" name='test' multiple> 
<option>Test</option> 
</select> 
<input type="submit"/> 
</form> 

とurl.py

from . import views 

    app_name = 'myapp' 
    urlpatterns = [ 
     url(r'^$', views.myapp, name='myapp'), 
     url(r'results/$', views.myapp_submit, name='myapp_submit') 
    ] 

とviews.py

def myapp_submit(request): 
    print request.POST 

私は取り戻す唯一のものは

<QueryDict: {u'csrfmiddlewaretoken'...]}> 
です10

selectタグに保持されているオプションを返すにはどうしたらいいですか?私はここでモデル/ビューフォームを使用しますが、利用可能なオプションを常に更新するために、JSで非常にクレイジーなことをやっています。

UPDATE

私が使用している:

request.POST.getlist('test') 

をしかし、私は私のマウスでそれを強調表示する場合にのみ[ 'テスト']を返します。私は単にselectタグの下にすべてのオプションが必要です。例。

<select class='form-control' size=10 id="test" name='test' multiple> 
<option>Test1</option> 
<option>Test2</option> 
<option>Test3</option> 
<option>Test4</option> 
</select> 

###Not sure if it's still getlist method 
>>request.POST.getlist('test') 
['Test','Test2','Test3','Test4'] 
+0

可能な複製を(http://stackoverflow.com/questions/618557/django-using-select-multiple -and-post) – Sevanteri

+0

http://stackoverflow.com/questions/39217259/django-get-unused-all-options-in-a-select-tagここで私はこれをクリアしました。二重投稿 – jwillis0720

答えて

0

あなたがのJsで奇妙な事をやっていると言うので、あなたは最初に、あなたのブラウザと何がそれでお送りパラメータからPOSTの要求を確認することができます。

+0

のために申し訳ありませんその答えではありません。あなたは答えではなくコメントとして提案を与えることができます.. – SumanKalyan

1

あなたviews.py変更しよう:[ジャンゴ:使用して<複数選択>とPOST]の

def myapp_submit(request): 
    request.POST.getlist('test[]') 
+0

これは正しく見えます - 私の実際の選択リストでそれを試してみましょう。あなたに戻ってきます – jwillis0720

+0

こんにちは、これは選択で強調表示されている要素のみを返しています。私はちょうど与えられた選択リストのすべてのオプションがほしいです。 – jwillis0720

関連する問題