Я пытаюсь использовать аутентификацию на основе токена Django Rest Framework. У меня есть следующие в models.py моего приложенияЯрлыки маркеров Django Rest не создаются автоматически
from django.db.models.signals import post_save
from django.dispatch import receiver
from rest_framework.authtoken.models import Token
from django.conf import settings
@receiver(post_save, sender=settings.AUTH_USER_MODEL)
def create_auth_token(sender, instance=None, created=False, **kwargs):
if created:
Token.objects.create(user=instance)
Всякий раз, когда я создаю новый счет (либо через «createsuperuser» или с помощью моей регистрационной формы), пользователь правильно добавляется в таблицу «AUTH_USER» , Однако, хотя таблица «authtoken_token» создана, в нее ничего не добавлено. Это заставляет меня думать, что мой @ -рецептор может работать неправильно.
Однако я могу вручную создавать маркеры, используя оболочку Django. Эти жетоны будут правильно добавлены в таблицу authtoken_token.
Любая помощь по этому вопросу было бы весьма признателен,
Благодаря
У вас AUTH_USER_MODEL явно указан в 'settings.py'? В противном случае вы всегда можете использовать 'get_user_model()' –
У меня нет явного определения. Я только что попробовал использовать get_user_model(), но я получил тот же результат. – ethanzh
У вас есть регистрация? Попробуйте либо распечатать, либо записать что-нибудь в ресивере и посмотреть, даже ли он работает. –