【问题标题】:How to get s3 file url with user Id using django rest frame work?如何使用 django rest 框架获取带有用户 ID 的 s3 文件 url?
【发布时间】:2022-06-14 09:21:07
【问题描述】:

上传图片后我的 s3 文件 URL - “https://demo-documents.s3.amazonaws.com/pics/fever.jpg” 所需的 URL 是 -“https://demo-documents.s3.amazonaws.com/pics/@userId/fever.jpg”

Models.py

    class MedicalRecord(models.Model):
        title = models.CharField(max_length=200)
        date_time = models.DateTimeField()
        user = models.CharField(max_length=200)
        record_file = models.ImageField(upload_to='pic')
    
    Serializer.py
    
    class MedicalRecordModelSerializer(serializers.ModelSerializer):
        class Meta:
            model = MedicalRecord
            fields = '__all__'
    Views.py
    
    class MedicalRecordViewSet(viewsets.ModelViewSet):
        serializer_class = MedicalRecordModelSerializer
        queryset = MedicalRecord.objects.all()

【问题讨论】:

    标签: python django-rest-framework


    【解决方案1】:

    您可以定义upload_to 函数。

    def upload_to(instance, filename):
        return 'pic/%s/%s' % (instance.user, filename)
    
    class MedicalRecord(models.Model):
        title = models.CharField(max_length=200)
        date_time = models.DateTimeField()
        user = models.CharField(max_length=200)
        record_file = models.ImageField(upload_to=upload_to)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-19
      • 2018-09-17
      • 2018-08-06
      • 2018-05-15
      • 2020-09-22
      • 2021-01-17
      • 2020-05-02
      相关资源
      最近更新 更多