Решение для составных внешних ключей модели Django

Я работаю с двумя моделями в Django: Order и OrderItems. Я хочу установить между ними отношения "один к одному", используя два столбца вместо обычного одного столбца.

Я знаю о таких решениях, как ForeignKeyConstraint от SQL Alchemy и пакет django-composite-foreignkey, но я бы предпочел не использовать ForeignKeyConstraint, а последний не совместим с Django 4.0. Есть ли альтернативное решение для создания составного внешнего ключа, ссылающегося на два столбца в Django 4.0?

class Orders(models.Model):
    objects = models.Manager()
    id = models.AutoField(primary_key=True)
    order_id = models.CharField(max_length=255)
    --------> here it should reference with two columns ( id and department_id ) 
orderItem = models.ForeignKey('OrderCustomers', on_delete=models.PROTECT, db_column='order_item_id', to_field='id')
    order_item_id = models..CharField(max_length=255)
    department_id = models.CharField(max_length=255)
    created_at = DateTimeWithoutTZField(auto_now_add=True)
    updated_at = DateTimeWithoutTZField(auto_now=True)

    def __str__(self):
        return self.order_id   
Вернуться на верх