Я хотел бы спросить, как я могу сделать аутентификацию и запросить теги, ограниченные конкретным пользователем (владельцем), используя 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) в заголовок или в качестве аргумента. Это тоже не работает.