Как получить все данные из формы отправки в django
Я очень большой новичок в Django. Я работаю над системой онлайн-школы. Я очень большой новичок в Django. Я создал список учеников в своей базе данных и из этой базы данных я извлек данные учеников в свой шаблон и отобразил их в таблице. Теперь я хочу подтвердить их присутствие в классе и получить эти данные обратно в бэкенд. Для этого я добавил опцию выбора, чтобы выбрать "да" или "нет". Затем я добавил кнопку отправки. Но после отправки я получаю данные только последнего ученика. Предположим, что у меня 10 студентов. Все равно я получу данные последнего студента. Пожалуйста, помогите мне получить данные всех студентов в бэкенд. Это большая помощь.
Моя модель
class StudentAttendance(models.Model):
grade = models.CharField(max_length=100, null=True, blank=True)
subject = models.CharField(max_length=100, null=True, blank=True)
admission_number = models.CharField(max_length=100, null=True, blank=True)
first_name = models.CharField(max_length=100, null=True, blank=True)
last_name = models.CharField(max_length=100, null=True, blank=True)
attendance = models.CharField(max_length=100, null=True, blank=True)
held_date = models.DateTimeField(auto_now_add=False, null=True, blank=True)
submit_date = models.DateTimeField(auto_now_add=True, null=True, blank=True)
def __str__(self):
return self.grade
Мое мнение
@login_required(login_url='login')
def grade8_dashboard(request):
if request.method == "POST":
grade = request.POST.get("grade","")
subject = request.POST.get("subject","")
admission_number = request.POST.get("admission_number","")
first_name = request.POST.get("first_name","")
last_name = request.POST.get("last_name","")
attendance = request.POST.get("attendance","")
# held_date = request.POST.get("held_date","")
submit_date = request.POST.get("submit_date","")
student = StudentAttendance(grade=grade, subject=subject, admission_number=admission_number, first_name=first_name, last_name=last_name, attendance=attendance, submit_date=submit_date)
student.save()
student_details = StudentDetail.objects.all()
context = {
'student_details' : student_details
}
return render(request, 'grade8-dashbaord.html', context)
Мой шаблон/Форма
Вам нужно сохранять каждого студента по одному (подход django forms), или вы можете отправить форму с помощью javascript, где все ваши студенты в списке будут сохранены как "item" со значением как stringified JSON, после чего вы можете получить все элементы как список на вашем бэкенде с помощью request.POST.getlist("items").