ValueError: Поле 'maca' ожидало число, но получило ''

У меня есть такая модель

class MacaModel(models.Model):
    maca = models.PositiveIntegerField(
       db_column='Maca', blank=True, null=True
    )
    

У меня есть такая форма

class MacaForm(models.ModelForm):
    maca = forms.CharField(required=False,widget=forms.TextInput(attrs={'placeholder': 'Maca'}))

Я пытаюсь отправить нулевое значение из ввода, но получаю эту ошибку

ValueError: Field 'maca' expected a number but got ''.

Как мне быть, если я не отправляю значение, которое принимается как None или что-то подобное?

Вам необходимо указать, что поле должно работать с None в случае, если оно не заполнено. Вы можете сделать это, установив параметр empty_value=… [Django-doc]:

class MacaForm(models.ModelForm):
    maca = forms.CharField(
        required=False,
        empty_value=None,
        widget=forms.TextInput(attrs={'placeholder': 'Maca'})
    )
Вернуться на верх