我需要一些帮助.如何使用具有相同名称的多个输入字段值来处理表单?并且只有一次查看,这实际上是基本问题的形式..另一个想法我从
https://stackoverflow.com/a/478406/6396981找到了这个方法:
relations = request.POST.getlist('relations')
我该如何处理?目前我正在用< input type =“radio”…来做这件事,但当然如果它在一次形式中具有相同的名称它就无法工作.但是,如果我使用:< input type =“checkbox”…,答案可以检查多于1个问题… 也许是这样的:
<input type="radio" name="answer-{{ question.id }}">
我如何在视图中完成所有操作?
解决了:
在我的测试中:
{% for question in questions %}
<input type="hidden" name="question" value="{{ question.id }}/>
{% for answer in question.get_answers %}
<input type="radio" name="answer-{{ question.id }}" value={{ answer.score }}>
{% endfor %}
{% endfor %}
views.py
questions = request.POST.getlist('question')
answers = [request.POST['answer-{}'.format(q)] for q in questions]
结果如下:
['20', '19', '16', '13', '11', '10', '9', '8', '1']
['5', '2', '3', '4', '1', '4', '4', '2', '2']
最佳答案 如果我理解你,你需要实施多项选择?
然后你可以在你的模板中这样做:
{% for answer in answers %}
<input type="checkbox" name="answer" id="answer{{ forloop.counter }}" value="{{ answer.id }}">
{% endif %}
安迪在视野中:
answer = request.POST.getlist('answer')
for el in answer:
pass