При добавлении свойства disabled форма модели перестаёт сохраняться

124Borman

Новичок
Пользователь
Янв 26, 2021
32
1
8
Возникла проблема при сохранении данных из формы в модель. У меня есть поле, в которое пользователь не должен ничего вводить и в него всё подставляется автоматически. Однако если я ставлю у этого поля свойство disabled, то валидация считает, что это пустое поле и не сохраняет запись в бд, но если это свойство убрать, то всё прекрасно сохраняется. Как можно решить эту проблему?

Форма:

Python:
class paidparkingForm(forms.ModelForm):
  class Meta:
      model = paidparking
      fields = ['adress','carnumber','amountoftime', 'price', 'telephone']
      widgets = {
          'adress': forms.Select(attrs={"class": "form-control", "id": "exampleFormControlSelect1"}),
          'carnumber': forms.TextInput(attrs={"class": "form-control form-control-lg", "placeholder": "Формат: x111xx177"}),
          'amountoftime': forms.NumberInput(attrs={"class": "number form-control form-control-lg"}),
          'price': forms.NumberInput(attrs={"class": "form-control form-control-lg", "disabled": 0}),
          'telephone': forms.TextInput(attrs={"class": "form-control form-control-lg", "placeholder": "89152021645"}),
      }

Модель:

Python:
class Parking(models.Model):
    adress = models.CharField(max_length=150, verbose_name='Адрес')
    workinghours = models.CharField(max_length=50, verbose_name='Время работы')
    minimaltimeforpayment = models.CharField(max_length=50, verbose_name='Минимальное время для оплаты')
    price = models.IntegerField(verbose_name='Цена')
    numberofavailableseats = models.IntegerField(verbose_name='Количество свободных мест', default=0)
    tickets = models.ManyToManyField('tickets', blank=True, verbose_name='Абонементы')

    def __str__(self):
        return self.adress

    class Meta:
        verbose_name = 'Парковка'
        verbose_name_plural = 'Парковки'
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Как можно решить эту проблему?
Можно заменить атрибут "disabled": 0 на "readonly": 0.
 

Форум IT Специалистов