Полный медиа абсолютных путей с графеном- django - PullRequest
0 голосов
/ 07 января 2020

В настоящее время я переключаюсь с использования DRF на django -graphene при использовании boto3 и s3 для медиаконтента. При использовании DRF поле файла будет возвращаться с полным путем для носителя внутри корзины s3. Однако графические поля django возвращают только относительные пути.

Например, с DRF поле файла возвращается с полным URL-адресом, как:

https://bucket.s3.amazonaws.com/logos/logos_2019-11-07_172356.1808000000.png

Но с графеном - django оно возвращается как:

/logos/logos_2019-11-07_172356.1808000000.png

Есть ли промежуточное ПО, которое необходимо добавить? Или мне нужно создать свой собственный скалер, чтобы справиться с этим? Я очень плохо знаком с графеном - django и графиком в целом. Так что любая помощь очень ценится.

1 Ответ

2 голосов
/ 14 января 2020

Вы можете добавить настраиваемое поле для создания полного URL следующим образом.

class FileType(DjangoObjectType):
    class Meta:
       model = FileModel

    storage_url = graphene.String()

   def resolve_storage_url(self, info):
       return f"https://bucket.s3.amazonaws.com/{self.url}"

Затем запросите поле storage_url из внешнего интерфейса.

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