From 0973121b39a4b2dbfa71f0bf01b24d8c11544607 Mon Sep 17 00:00:00 2001 From: Andrey Smakotin Date: Tue, 11 Nov 2025 17:04:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D0=B0=20?= =?UTF-8?q?=D1=83=D1=81=D1=82=D0=B0=D1=80=D0=B5=D0=B2=D1=88=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=BB=D0=BE=D0=B3=D0=B8=D0=BA=D0=B0=20=D0=B0=D0=B4=D1=80=D0=B5?= =?UTF-8?q?=D1=81=D0=BE=D0=B2=20=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D0=BE?= =?UTF-8?q?=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Исправлена ошибка AttributeError при создании нового клиента. Адреса теперь привязаны к заказам, а не к клиентам. - Удалено обращение к customer.addresses в customer_detail view - Убрана секция "Адреса доставки" из шаблона customer_detail.html - Исправлена команда create_demo_orders для работы с новой структурой 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .../templates/customers/customer_detail.html | 35 +------------------ myproject/customers/views.py | 4 +-- .../management/commands/create_demo_orders.py | 8 ++--- 3 files changed, 4 insertions(+), 43 deletions(-) diff --git a/myproject/customers/templates/customers/customer_detail.html b/myproject/customers/templates/customers/customer_detail.html index 1ddba01..4600eec 100644 --- a/myproject/customers/templates/customers/customer_detail.html +++ b/myproject/customers/templates/customers/customer_detail.html @@ -19,7 +19,7 @@
-
+
Информация о клиенте
@@ -82,39 +82,6 @@
- - -
-
-
-
Адреса доставки
- Добавить адрес -
-
- {% if addresses %} - {% for address in addresses %} -
- {% if address.is_default %} - Адрес по умолчанию - {% endif %} -
{{ address.recipient_name }}
-

- Адрес: {{ address.full_address }}, {{ address.district }} -

- {% if address.delivery_instructions %} -

- Инструкции: {{ address.delivery_instructions }} -

- {% endif %} - -
- {% endfor %} - {% else %} -

У клиента нет сохраненных адресов доставки.

- {% endif %} -
-
-
{% endblock %} \ No newline at end of file diff --git a/myproject/customers/views.py b/myproject/customers/views.py index a7882ea..b2f4d31 100644 --- a/myproject/customers/views.py +++ b/myproject/customers/views.py @@ -79,11 +79,9 @@ def customer_list(request): def customer_detail(request, pk): """Детали клиента""" customer = get_object_or_404(Customer, pk=pk) - addresses = customer.addresses.all() - + context = { 'customer': customer, - 'addresses': addresses, } return render(request, 'customers/customer_detail.html', context) diff --git a/myproject/orders/management/commands/create_demo_orders.py b/myproject/orders/management/commands/create_demo_orders.py index 1299cb3..fcbbdba 100644 --- a/myproject/orders/management/commands/create_demo_orders.py +++ b/myproject/orders/management/commands/create_demo_orders.py @@ -108,12 +108,8 @@ class Command(BaseCommand): # Устанавливаем адрес или магазин if is_delivery and addresses: - # Для доставки выбираем адрес клиента или случайный - customer_addresses = list(customer.addresses.all()) - if customer_addresses: - order.delivery_address = random.choice(customer_addresses) - else: - order.delivery_address = random.choice(addresses) + # Для доставки выбираем случайный адрес (адреса теперь привязаны к заказам) + order.delivery_address = random.choice(addresses) order.delivery_cost = Decimal(random.randint(200, 500)) elif shops: order.pickup_shop = random.choice(shops)