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 не может быть решением в моем случае по определенным причинам.

Вернуться на верх