Аутентификация и авторизация с помощью Django GraphQL JWT и графенового реле - PullRequest
0 голосов
/ 23 декабря 2019

Я хотел бы спросить, как я могу сделать аутентификацию и запросить теги, ограниченные конкретным пользователем (владельцем), используя Graphen Relay и Django JWT. Вот моя модель:

class Tag(models.Model):
"""Tag to be used for a objective"""
name = models.CharField(max_length=255)
user = models.ForeignKey(
    settings.AUTH_USER_MODEL,
    related_name='tag',
    on_delete=models.CASCADE,
)

Вот мой код схемы:

class TagNode(DjangoObjectType):
class Meta:
    model = Tag
    filter_fields = ['name']
    interfaces = (relay.Node,)

Вот мой запрос:

class Query(graphene.ObjectType):
    tag = relay.Node.Field(TagNode)
    all_tags = DjangoFilterConnectionField(TagNode)

    def resolve_all_tags(self, info):

        # context will reference to the Django request
        print(info.context.user)
        if not info.context.user.is_authenticated:
            return Tag.objects.none()
        else:
            return Tag.objects.filter(user=info.context.user)

Вот документ для Django JWT: https://github.com/flavors/django-graphql-jwt но я не знаю, как получить пользователя (уже использую info.context.user), но он не работает, когда я пытался добавить авторизацию (токен JWT) в заголовок или в качестве аргумента. Это тоже не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...