Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django存储S3-存储现有文件_Django_Boto3_Wagtail_Python Django Storages - Fatal编程技术网

Django存储S3-存储现有文件

Django存储S3-存储现有文件,django,boto3,wagtail,python-django-storages,Django,Boto3,Wagtail,Python Django Storages,我有django 1.11和最新的django存储,安装了S3后端 我试图以编程方式实例化一个ImageFile,使用AWS图像链接作为起点。查看源代码/文档,我不知道如何做到这一点 我假设我需要创建一个文件,并为它提供从url派生的路径,而不提供域,但我找不到确切的方法 其最终目的是通过编程创建指向S3图像的wagtailImage对象(因此将新的ImageFile传递到图像的Imagefield)。我拥有S3存储桶,图像存储在其中 上传图像工作正常,因此系统设置正确 更新 为了澄清,我需要做

我有django 1.11和最新的django存储,安装了S3后端

我试图以编程方式实例化一个ImageFile,使用AWS图像链接作为起点。查看源代码/文档,我不知道如何做到这一点

我假设我需要创建一个文件,并为它提供从url派生的路径,而不提供域,但我找不到确切的方法

其最终目的是通过编程创建指向S3图像的wagtail
Image
对象(因此将新的ImageFile传递到图像的Imagefield)。我拥有S3存储桶,图像存储在其中

上传图像工作正常,因此系统设置正确

更新


为了澄清,我需要做与正常过程相反的事情。通常,系统会收到一个物理图像,然后创建一个
ImageFile
,然后将该文件上载到S3,并为
文件.URL
分配一个URL。我有
File.url
并且需要一个
ImageFile
对象。

事实证明,在一些需要文件的模型中,当使用DjangoStorages时,我所要做的就是传递AWS S3对象键,而不是在文件字段上传递
文件

调用
model.save()
时,会向S3发出
boto
调用,以验证具有提供的密钥的对象是否存在,并保存该项。

为了澄清这一点,这意味着:
my_model.upload=“S3 object key.jpg”
而不是
my_model.upload.save(…)
我正在尝试做完全相同的事情,但我有个错误。djfile=Media.objects.create(asset\u title='title 1),image\u file=my\u bucket\u object)生成AttributeError:'s3.ObjectSummary'对象没有属性'\u committed'