Graphene Django File字段获取绝对路径

时间:2019-09-05 01:15:25

标签: django graphene-django

我的Django模型中有一个图像字段,我试图获取Graphene输出的图像字段的绝对路径,以便连接到我的客户端。

class ProfileType(DjangoObjectType): 
     class Meta: model = Profile

     def resolve_avatar(self, info, **kwargs):

    print(info.context.build_absolute_uri(self.avatar))

我没有绝对的文件字段路径。

2 个答案:

答案 0 :(得分:1)

如果Profile.avatar是ImageField,则应使用self.avatar.url而不是self.avatar:

info.context.build_absolute_uri(self.avatar.url)

答案 1 :(得分:0)

所以我得到了这个答案,我想确保我发布它的人不会犯同样的错误。

代码如下

class ProfileType(DjangoObjectType):

    class Meta:

        model = Profile

    avatar          = graphene.String()
    cover_photo     = graphene.String()


    def resolve_avatar(self, info):

        return info.context.build_absolute_uri(self.avatar.url)

    def resolve_cover_photo(self, info):

        return info.context.build_absolute_uri(self.cover_photo.url)