Files
octopus/myproject/orders/forms.py
Andrey Smakotin 39ab474a3c Fix: Order creation error - avoid calling reset_delivery_cost before items are saved
The error occurred because:
1. OrderForm.save(commit=False) was calling reset_delivery_cost()
2. reset_delivery_cost() uses DeliveryCostCalculator which accesses order.items
3. But items don't exist yet when order is not saved to DB

Solution:
- OrderForm.save() now only calls reset_delivery_cost() when commit=True
- order_create() explicitly calls reset_delivery_cost() AFTER saving items
- This ensures items exist in DB before delivery cost calculation

Error was: 'Order' instance needs to have a primary key value before this relationship can be used.
2025-11-28 23:34:53 +03:00

24 KiB