2016-06-07 5 views
7

Я создал поставщика oauth, используя django-oauth-toolkit.Включить oauth логин с django-allauth, но пользовательский провайдер

Теперь я хотел бы разрешить пользователям моего клиентского приложения входить в систему через этого провайдера.

Я понимаю, что django-allauth является идеальным инструментом для этого.

Я вижу, что у django-allauth есть специальная папка для каждого провайдера, и в этой папке есть специальные файлы с именем provider.py. Например, this - это папка для поставщика github.

Должен ли я создавать что-то подобное этой папке, специально для моего пользовательского поставщика? Или есть более простой/лучший способ сделать это?

+0

Здравствуйте! Я просто начинаю новый проект и имею схожую проблему, что хочу использовать django-oauth-toolkit для провайдера и django-allauth для потребителя. Вы нашли какой-либо учебник или документ об этом? – Norak

+0

Нет, к сожалению :( – Brachamul

+0

Спасибо за ответ в любом случае. – Norak

ответ

0

Основываясь на документах, он обнаруживает новых поставщиков на основе INSTALLED_APPS. Поэтому вам понадобится приложение Django, которое имеет ту же структуру да и включает providers.py. Таким образом, вы должны иметь возможность использовать новое приложение или существующее.

Это из docs:

Когда существующий провайдер не вполне отвечает вашим потребностям, вы могли бы найти себя необходимости настройки поставщика.

Это может быть достигнуто путем подклассификации существующего провайдера и внесения изменений в . Провайдеры определяются как приложения django, поэтому обычно настраивает его на создание проекта django в вашего проекта, содержащий ваши настроенные urls.py, views.py и файлы provider.py. Какое поведение вы можете настроить вне рамки этой статьи.

Кроме того, примечание о содержании providers.py файла:

В файле provider.py, вам нужно будет выставить класс поставщика при наличии атрибута на уровне модуля под названием provider_classes с вашим пользовательских классов в списке. Это позволяет вашему производителю быть зарегистрированным на основе установки INSTALLED_APPS.

Смежные вопросы