Ошибка: Поле формы Django является обязательным, пока в форму вводится содержимое

View

def work_entry(request):
    if request.method == "POST":
        form = WorkHoursEntryForm(data=request.POST)
        if form.is_valid():
            form.save()
            return redirect('home')
        else:
            print(form.errors)
    else:
        form = WorkHoursEntryForm()

    return render(request, 'Work_Data_Entry.html', context={'form': form})


Form
class WorkHoursEntryForm(forms.ModelForm):
    time_worked = forms.CharField(widget=forms.TextInput(
        attrs={'class': 'form-control', 'id': "entry_time_worked", 'type': 'text'}))
    shift_num = forms.CharField(widget=forms.TextInput(
        attrs={'class': 'form-control', 'id': "shift_num", "type": "text"}))

    class Meta:
        model = WorkHoursEntry
        fields = ('shift_number', 'time_worked_entry')

Model:

    class WorkHoursEntry(models.Model):
        entry_date = models.DateField(auto_now=True)
        entry_time = models.TimeField(auto_now=True)
        time_worked_entry = models.CharField(max_length=50)
        shift_number = models.CharField(max_length=10)

Я ввел необходимые данные в форму, но продолжаю получать ошибку формы

ul class="errorlist "shift_number ul class="errorlist" id="id_shift_number_error "Это поле обязательно. id=time_worked_entry ul class="errorlist" id="id_time_worked_entry_error">Это поле обязательно.

и я не могу понять, как это исправить, так как входы заполнены, но я получаю эту ошибку. кто-нибудь видит что-то, что я упускаю. Любая помощь была бы замечательной.

I fixed it, apparently i just needed to have the variable names i put for the form tags have the same name as what i named the variable names for the model fields. like

shift_number = models.CharField(max_length=10)

shift_number = forms.CharField(widget=forms.TextInput(
        attrs={'class': 'form-control', 'id': "shift_num", "type": "text"}))
Вернуться на верх