Исправление доступа к полям доставки после рефакторинга

- Добавлены свойства обратной совместимости в модель Order для доступа к полям доставки через связь delivery
- Исправлены фильтры по delivery_date в модели Customer (get_successful_orders_total)
- Исправлены фильтры в orders/filters.py для работы с delivery__delivery_date
- Добавлен select_related('delivery') в customer_detail view для оптимизации запросов

Исправляет ошибку FieldError: Cannot resolve keyword 'delivery_date' into field
This commit is contained in:
2025-12-24 13:35:23 +03:00
parent 94fe363cb1
commit 9f4f03e340
4 changed files with 78 additions and 11 deletions

View File

@@ -270,11 +270,11 @@ class Customer(models.Model):
# Базовый queryset: только успешные заказы
queryset = self.orders.filter(status__is_positive_end=True)
# Фильтрация по датам (используем delivery_date)
# Фильтрация по датам (используем delivery__delivery_date после рефакторинга)
if start_date:
queryset = queryset.filter(delivery_date__gte=start_date)
queryset = queryset.filter(delivery__delivery_date__gte=start_date)
if end_date:
queryset = queryset.filter(delivery_date__lte=end_date)
queryset = queryset.filter(delivery__delivery_date__lte=end_date)
# Агрегация суммы
result = queryset.aggregate(