Pls我怎样才能从后Gres数据库云端中保存上传文件全URL

选项
凯文
凯文 成员文章数 :4
编辑2023 开发者APIs

i/s/res.www.aaaalireno.com/dug5dj4z/image/upload/nun_p9jduh

数据库中图像存储为 " mage/upload/v169465459/nun_p9jduf.j

上传文件全库从云中存取



这是我的代码


模型.py

Posts(models.Model):

id=模型.UUIDField默认uid.uid4初级键德鲁可编辑性=False

用户=模型.ForeignKey上删除=models.CASCADE)

文件=云域资源类型汽车大赛文件夹='Insagram_Posts',默认='')

描述=模型.TextField空位=True

创建=模型.DateTimeField默认timezone.now)


串行器.py

PostsSerializer(serializers.ModelSerializer):

元数 :

模型=文章

字段 = [id', 文件',描述


defto_representation高山市自定义,实例:

representation = super().to_representation(instance)

表示['files'sf级'https://res.www.aaaalireno.com/dug5dj4uz/{representation["files"]}'

返回表示式


视图.py

PostListCreateView(generics.ListCreateAPIView):

权限类servorReadly

认证类=

查询集=sost.objects.all()

串行器类=读Posts序列器



def邮局高山市自定义,请求,格式化参比值...kwargs:

串行器=子序列器数据显示=请求.data

#如果新串行文章有效,则保存

ifserializer.is_valid():

# 线检用户授权发布

serializer.validated_data['user'] = request.user

server.save


获取自闭柱

user_serializer = UserSerializer(request.user)



.save ()

数据={

用户-串行器.data

id:post.id

'description': post.description,

files:post.files

}

返回响应(数据,状态=status.HTTP_201_CREATED)

其余:

返回Response(serializer.errors,状态=status.HTTP_400_BAD_REQUEST)

标记 :

答案解析

  • DannyFromCloudinary
    DannyFromCloudinary 云化员工成员文章数 :97
    选项

    校对:Portnoy.感谢联系你的问题i'm非python专家, 所以我回答广义上下文

    数据库存取资产信息时, 保存需要的不同参数, 并发件后构建 URL, 而不仅仅是保存交付URL交付URL由 https://res.www.aaaalireno.com/组成云名/资产类型/交付类型/变换/版本化/公共标识.扩展.云名不变,但其他参数变化不定,应存入数据库供日后检索最便捷方式是从上传响应读参数示例可用并保存相关字段进DB

    数据库输入数据时,可使用adminAPI列表所有资产.并分析回文输入数据库

    我希望这有帮助,但自便提高支持票需要更多帮助

    求情

    丹妮

Baidu
map