Рендеринг полей вручную из modelform... Как его сохранить?

Я начинающий в django. Я рендерил поля вручную из modelform с помощью {{form.field_name}}. В моей модели 5 полей. как я могу сохранить данные полей с помощью представления на основе класса.

Когда поля рендерируются с помощью {% form %}, я могу сохранить свою форму с помощью CreateView.Вот так

class StudentCreate(CreateView):
    model = StudentDetails
    fields = '__all__'
    success_url = reverse_lazy('list-student') 

Но когда я рендерил поля вручную из modelform с помощью {{form.field_name}}, я не могу сохранить их с помощью Createview... Есть идеи по этому поводу? Почему это не работает? Как я могу сохранить его?

Forms.py

class Student(forms.ModelForm): 
class Meta:
    model = StudentDetails
    fields = "__all__"

Вы должны быть очень внимательны и конкретны при именовании ваших пользовательских полей. Если вы этого не сделаете, Django не распознает поля формы и проигнорирует их.

Если вы хотите посмотреть, как вы должны это делать, просто отрендерите ваш {% form %} и посмотрите в исходный код. Затем вы должны использовать точно такие же имена для ваших пользовательских полей.

Вернуться на верх