我的Django模型中有一个图像字段,我试图获取Graphene输出的图像字段的绝对路径,以便连接到我的客户端。
class ProfileType(DjangoObjectType):
class Meta: model = Profile
def resolve_avatar(self, info, **kwargs):
print(info.context.build_absolute_uri(self.avatar))
我没有绝对的文件字段路径。
答案 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)