web-dev-qa-db-ja.com

Django:<select multiple>とPOSTを使用

私はテンプレートでこのようなものを使用しています

<select multiple="multiple"  name="services" id="services" size="5">
    {% for service in services %}
        <option value="{{service.id}}">{{service}}</option>
    {% endfor %}
</select>

FirebugのPOSTデータまたはデバッグDjango=を表示すると、1つの値しか送信されないことがわかります。何か間違ったことや概念を誤解していますか?

57
neoice
request.POST.getlist('services')
136

参考までに、私は使用しなければなりませんでした:

    list = request.POST.getlist("items[]")

[]を省略すると、正しい値の代わりに空のリストが返されるためです。 jQueryを使用して複数選択要素の値を取得していますが、jQueryは[]を追加しているようです

9

気を付けて!キーが存在しない場合、QueryDictのgetlistメソッドは空のリストを返します。例外はスローされません。 http://bit.ly/MdgrUH

1
ady

request.POST.getlist( 'services')

私のために働いた。または、選択ボックス名をリストとして定義できます

0
Projesh Bhoumik

使用するだけで期待されるリストを取得できます...

request.POST.getlist('fiel_name')
0
Javed