Разрешён NULL для delivery_date в черновиках заказов
- orders/models/delivery.py: delivery_date теперь null=True, blank=True - Валидация: для черновиков дата необязательна, для обычных заказов - обязательна - Миграция: 0003_allow_null_delivery_date_for_drafts.py
This commit is contained in:
@@ -62,8 +62,10 @@ class Delivery(models.Model):
|
||||
|
||||
# Дата и время доставки
|
||||
delivery_date = models.DateField(
|
||||
null=True,
|
||||
blank=True,
|
||||
verbose_name='Дата доставки',
|
||||
help_text='Дата, когда должна быть выполнена доставка'
|
||||
help_text='Дата, когда должна быть выполнена доставка (обязательна для не-черновиков)'
|
||||
)
|
||||
|
||||
time_from = models.TimeField(
|
||||
@@ -131,6 +133,13 @@ class Delivery(models.Model):
|
||||
return
|
||||
|
||||
# Для не-черновиков полная валидация
|
||||
|
||||
# Проверка: дата доставки обязательна
|
||||
if not self.delivery_date:
|
||||
raise ValidationError({
|
||||
'delivery_date': 'Для не-черновиков дата доставки обязательна'
|
||||
})
|
||||
|
||||
# Проверка: для курьерской доставки должен быть адрес
|
||||
if self.delivery_type == self.DELIVERY_TYPE_COURIER:
|
||||
if not self.address:
|
||||
|
||||
Reference in New Issue
Block a user