Ограничение внешнего ключа Django с моделью, которая находится в другой базе данных - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь использовать библиотеку oauth2_provider, которая предоставляет модель для AccessToken , которая использует внешние ключи в модели пользователя.Моя модель User фактически будет жить в базе данных, отличной от моделей токенов OAuth2.Я могу использовать маршрутизатор, чтобы указать, какую БД использовать для конкретной модели, но правильно ли я сделал вывод, что Django не будет поддерживать внешний ключ для модели в другой БД?

Если бы я все еще хотел расширитьиз AbstractAccessToken с моим пользователем в другой БД, есть ли способ, которым Django позволяет мне заполнять столбец внешнего ключа user_id вообще?Или мне просто нужно оставить его null и определить, а мой собственный класс AccessToken определит свой собственный неограниченный столбец external_user_id?

1 Ответ

0 голосов
/ 03 октября 2018

Django не поддерживает операции ForeignKey, которые охватывают несколько баз данных.Итак, как вы и предложили, я думаю, что вы можете предоставить свой IntegerField для пользователя и использовать его вручную.К сожалению, для этого может потребоваться много усилий с этой сторонней библиотекой, если в ней много внутреннего кода, который ожидает вытащить пользователя из базы данных.

...