Вот мой код:
models.py :
Код: Выделить всё
class CartOrder(models.Model):
# ...
product_status = models.CharField(choices=STATUS_CHOICE, max_length=30, default="processing")
class CartOrderItems(models.Model):
# ...
product_status = models.CharField(max_length=200, blank=True, null=True)
order = models.ForeignKey(CartOrder, on_delete=models.CASCADE, related_name="cartorderitems")
Код: Выделить всё
def create_cancel(request, oid):
if request.method == "POST":
user = request.user
try:
# Fetch the CartOrder instance
order = get_object_or_404(CartOrder, id=oid)
order.product_status = "cancelled"
order.save()
# Fetch the related CartOrderItems instance
order_item = order.cartorderitems.first()
order_item.product_status = "cancelled"
order_item.save()
# Fetch the associated product
product = get_object_or_404(Product, pid=order.pid)
# Additional product-related operations can be done here, if needed
messages.success(request, "Order successfully cancelled.")
except Exception as e:
messages.error(request, f"An error occurred: {e}")
return redirect("core:dashboard")
else:
messages.error(request, "Invalid request method.")
return redirect("core:dashboard")
Может ли кто-нибудь помочь мне понять, что происходит не так? Я проверил базу данных и обнаружил, что поле Product_status не обновляется ни для экземпляров CartOrder, ни для CartOrderItems.
Подробнее здесь: https://stackoverflow.com/questions/792 ... ritems-ins
Мобильная версия