Я хочу добавить несколько строк в моей базе данных MySQL из одной формы ...
Это мой шаблон. Я зацикливаюсь на студенческих объектах. Я хочу добавить оценки всем этим студентам в один клик.
<form method="POST" action="{% url 'Automation:Automation/mark' %}">
{%csrf_token %}
<table border="1px">
<tr>
<td><label>UserID</label></td>
<td><label>Mark:</label></td>
</tr>
{% for student in student %}
<tr>
<td><input type="text" name="studentid" value="{{ student.UserID}}">
</td>
<td><input type="text" name="mark"></td>
</tr>
{% endfor %}
<tr>
<td align="center"><button type="submit"
class="approve1">Submit</button></td>
<td align="center"> <a href="{% url
'Automation:Automation/addresult' %}" class="btn btn-default
approve1">Back</a></td>
</tr>
</table>
</form>
А вот мое представление, которое определенно добавляет только последнюю строку ввода.
def mark(request):
exam = request.session['exam']
subject = request.session['subject']
if request.method == 'POST':
mark = request.POST['mark']
studentid = request.POST['studentid']
post = result.objects.create(
studentid=studentid,
examid=exam,
subjectid=subject,
mark=mark,
year=datetime.now().year,
added_by=str(request.user)
)
post.save()
return redirect('/Automation/addresult')
return render(request, 'Automation/mark.html')