Решение для составных внешних ключей модели 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