Django как проверить, используется ли таблица в качестве внешнего ключа другой таблицы

Итак, у меня есть две модели, Order и Orders, и для каждого товара, который есть в моей сессии (корзине). Я создаю объект Order_object (сохраняю в базе данных) и после сохранения каждого товара я хочу сделать проверку для каждого Order на то, какие из них не являются внешним ключом в Orders, если нет, создаю объект Orders_object, а затем добавляю каждого Order, который не является внешним ключом Orders И я хочу, чтобы каждый Orders имел несколько Order

Models.py

class Order(models.Model):
   ----fields---

class Orders(models.Model):
 order = models.ManyToManyField(Order)

 ----other fields ------

Я хочу сделать что-то подобное, но не знаю, сработает ли это, может кто-нибудь подтвердить, работает ли это?:

Примечание: даже если этот код, который я хочу проверить, работает, я не добавляю несколько Order_object в Orders_object, я просто создаю Orders_object, содержащий только один Order_object, как мне это исправить

 for order_object in Order:
   check_if_doesnt_have_foreign_key = True
   for orders in Orders:
      if orders.order == order_object
          check_if_doesnt_have_foreign_key = False
          break:
   if check_if_doesnt_have_foreign_key == True:
      orders = Orders(order=order_object)
      orders.save()

Вы можете сделать что-то подобное :

order = get_object_or_404(Order, pk=pk)
for order_object in Order:
    if order_object.orders.exists():
       # Do something
     else:
       # Do something
order_all = Order.objects.all()
orders_all = Orders.objects.all()
for order_object in order_all:
    the_order_object_is_not_fk_in_orders = True
    for orders in orders_all:
        for orders_order_object in orders.order.all():
          if orders_order_object == order_object:
            the_order_object_is_not_fk_in_orders = False
            break
    if the_order_object_is_not_fk_in_orders == True:
        #do something
Вернуться на верх