在我的html中,我动态生成具有相同名称的下拉选项
<form action="{% url manageCsv %}" method="post">
{% csrf_token %}
<p>
<input type="hidden" name="doc_id" value="{{ doc_id }}">
{% for column in file_columns %}
Column {{ forloop.counter0|add:1 }}
<select name="columns">
<option value="blank"></option>
{% for column_value in file_columns %}
<option value="{{ column_value }}">{{ column_value }}</option>
{% endfor %}
</select>
{% endfor %}
</p>
<p>
<input type="submit" value="Submit" />
</p>
</form>
更新 我的Views.py:
def manageCsv(request):
if request.method == 'POST':
file_id = request.POST['doc_id']
csvColumns = request.POST['columns']
print >> sys.stderr, csvColumns['columns']
return HttpResponseRedirect(reverse('index'))
在我看来,当我打印我的请求时。我得到了我需要的所有东西:
<QueryDict: {u'csrfmiddlewaretoken': [u'lGlxVmiYI9xFb5bV7cJPrP9GR0t0LYTi'], u'doc_id': [u'14'], u'columns': [u'Organisation', u'Sum of products']}>
但我面临的问题是,当我分配csvColumns = request.POST['columns']
时,csvColumns
会从列表中打印出 Sum of products
而不是整个列表{{} 1}}
如何获取整个列表?我错过了什么?
对此的任何帮助都很棒
提前致谢