Djano UpdateView не отображает modelForm

У меня есть модель assesment, которая связана с другими моделями. Я создал UpdateView, форму на основе модели assesment. Проблема в том, что когда я отображаю форму в шаблоне, ни одно поле не отображается, кроме кнопки отправки, поэтому обновлять нечего. я вижу только кнопку отправки без полей формы

enter image description here

Здесь дизайны ниже

models.py

class assessment(models.Model):
className = models.ForeignKey(all_class, on_delete=models.SET_NULL, null=True)
student = models.ForeignKey(students, on_delete=models.SET_NULL, null=True)
subjectName = models.ForeignKey(allsubject, on_delete=models.SET_NULL, null=True)
firstCa = models.IntegerField(default=0)
secondCa = models.IntegerField(default=0)
exam = models.IntegerField(default=0)
section = models.CharField(max_length=100, choices=section_choices)
term = models.CharField(max_length=100 , choices=term_choices)
session = models.CharField(max_length=1000)
date = models.DateTimeField(auto_now_add=True)
def __str__(self):
    return str(self.className)
class Meta:
    ordering = ['className']

views.py

class assessmentEntry(UpdateView):
model = assessment
fields = '__all__'
Form_class = AssessmentForm
template_name = 'result/assessmentScore.html'
success_url = reverse_lazy('result:index')

Forms.py

class AssessmentForm(forms.ModelForm):
class Meta:
    model = assessment
    fields = ['className','student','subjectName','firstCa','secondCa','exam']

urls.py

 path('assessmentScores/<int:pk>/', assessmentEntry.as_view(), name='assessmentScores'),

template(assessmentScore.html)

<div >
    <form method="POST">
      {% csrf_token %}
        {{ Form.as_p}}
        <button
          type="submit"
          class="px-2 text-white bg-indigo-500 rounded-md  focus:bg-indigo-600 focus:outline-none">
          Save Scores
        </button>
      </form>
   </div>

Пожалуйста, что именно я делаю неправильно? И как мне это исправить.

Представления на основе классов, которые наследуются от FormMixin [Django-doc], как FormView, CreateView, UpdateView и DeleteView передают объект формы в шаблон как form, а не Form, поэтому вы отображаете это как:

{{ form.as_p }}

Примечание: Хотя это и не обязательно, обычно URL пишутся в кебабном регистре, так:

path('assessment-scores/<int:pk>/', assessmentEntry.as_view(), name='assessmentScores')
Вернуться на верх