Данные POST формы оценок и посещаемости не сохраняются в базе данных.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Данные POST формы оценок и посещаемости не сохраняются в базе данных.

Сообщение Anonymous »

Сейчас я работаю над проектом, в котором мне нужно вводить оценки и посещаемость учащихся с помощью Django. У меня есть формы для оценок и посещаемости, но когда я попытался отправить их, они не отобразились в их конкретных таблицах (Оценка) и (Посещаемость). Может ли кто-нибудь мне помочь?
Это мой файлview.py для обоих:

Код: Выделить всё

 @login_required
def mark_attendance(request):
students = Student.objects.all()
if request.method == 'POST':
form = AttendanceForm(request.POST)
if form.is_valid():
form.save()
return redirect('attendance')
else:
form = AttendanceForm()
return render(request, 'mark_attendance.html', {'form': form, 'students': students})

@login_required
def input_grades(request):
students = Student.objects.all()
subjects = Subject.objects.all()
form = GradesForm()
if request.method == 'POST':
form = GradesForm(request.POST)
if form.is_valid():
form.save()
return redirect('grades')
else:
print(form.errors)  # This will print errors in the console
return render(request, 'input_grades.html', {'form': form, 'students': students, 'subjects': subjects})
Вот мой файл form.py для обоих:

Код: Выделить всё

# Attendance Form
class AttendanceForm(forms.ModelForm):
class Meta:
model = Attendance
fields = ['student', 'date', 'is_present']
widgets = {
'date': forms.DateInput(attrs={'type': 'date'}),
}

# Grades Form
class GradesForm(forms.ModelForm):
class Meta:
model = Grades
fields = ['student', 'subject', 'quarter', 'grade']
widgets = {
'grade': forms.TextInput(attrs={'class': 'form-control'}),
'student': forms.Select(attrs={'class': 'form-control'}),
'subject': forms.Select(attrs={'class': 'form-control'}),
'quarter': forms.TextInput(attrs={'class': 'form-control'}),
}
Формы в своих html-файлах:
  • mark_attendance.html

Код: Выделить всё

Mark Attendance

{% csrf_token %}

Student:

Select Student
{% for student in students %}
{{ student.first_name }} {{ student.last_name }}
{% endfor %}


Date:


Present:


Submit

  • input_grades.html

    Код: Выделить всё

    Input Grades
    
    {% csrf_token %}
    
    Student:
    
    Select Student
    {% for student in students %}
    {{ student.first_name }} {{ student.last_name }}
    {% endfor %}
    
    
    Subject:
    
    Select Subject
    {% for subject in subjects %}
    {{ subject.subject_name }}
    {% endfor %}
    
    
    Quarter:
    
    Select Quarter
    Q1
    Q2
    Q3
    Q4
    
    
    Grade:
    
    
    Submit
    
    
    


Подробнее здесь: https://stackoverflow.com/questions/792 ... e-database
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»