Django ORM: миграция составного внешнего ключа на последнюю версию django
Имею ограниченный опыт работы с django orm,
Есть проект с устаревшей версией django (2.2) и мне нужно перевести его на последнюю версию (4.1). Не могу понять, что такое современная концепция чего-то под названием CompositeForeignKey
и CompositeOneToOneField
, которая раньше импортировалась из стороннего модуля django-composite-foreignkey (этот модуль не поддерживает django orm выше версии 2). Итак, мне нужно создать внешний ключ из нескольких полей к другой таблице. Ниже приведен пример существующего определения такого составного ключа.
from compositefk.fields import CompositeForeignKey
...
# my model...
study_country = CompositeForeignKey(
'StudyCountry', on_delete=models.DO_NOTHING, to_fields={'study': 'study', 'country': 'country'}
)
Есть ли простой способ перенести такой код на новый django orm?
p.s. любой сырой SQL не может быть решением в моем случае по определенным причинам.