问题标签 [python-django-storages]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
171 浏览

python - 单击评论按钮时,会显示:分配前引用的局部变量“表单”

嗨,我是 python 新手,当我在我的 python django 项目中添加评论选项时。
我想出了一个UnboundLocalError.

我的意见.py:

这是浏览器中显示的错误

在此处输入图像描述

希望我会得到满意的答案这是我在单击评论按钮时遇到的错误,它发生在我向我的项目添加评论选项时。

0 投票
1 回答
287 浏览

django - 如何以编程方式在 Django 中存储 S3 图像

正如在此处链接的上一个问题中所述,我正在将上传到 S3 的图像保存在 Django 中。图像已经存在于 S3 中,我想通过创建媒体对象以编程方式将图像添加到 Django。

Django storages S3 - 存储现有文件

我的课看起来像这样:

在我看来,我有这个:

我目前收到 AttributeError: 's3.ObjectSummary' 对象没有属性 '_committed'

0 投票
0 回答
396 浏览

django - 使用“同源”引荐来源网址策略访问 Amazon S3 上的 Django 静态文件

从 Django 3.0 开始,添加了 SECURE_REFERRER_POLICY 并包含在python manage.py check --deploy命令中。为了让我的 Django 项目从 Amazon S3 读取媒体文件,我之前将我的设置strict-origin-when-cross-origin为域(类似于这个问题Amazon S3 Bucket Policy Referer中描述的内容)。

但这是一个非常基本的热链接保护,我在 Django 论坛上被建议切换到same-origin.

但是,现在我的网站无法再获取其任何资产文件(403 错误),并且django-storages到目前为止,浏览和搜索答案的 S3 文档已被证明是艰难且毫无结果的。:(

这是我目前拥有的:

在 Django 方面,我django-storages配置了:

  • AWS_DEFAULT_ACL = 'authenticated-read'
  • SECURE_REFERRER_POLICY = 'same-origin'
  • STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

在 AWS 上,我有以下策略(引用者的访问策略已被删除):

以下 CORS:

并且程序化用户具有以下策略:

我感觉我缺少的是将bucket-manager用户添加到存储桶的 ACL 中,但是 UI 要求提供规范 ID,而我终其一生都找不到它。

0 投票
0 回答
89 浏览

python - django 向导在显示多表单时出现问题

我的观点页面:

我的表单页面:

我是 Django 的新手,我正在使用向导表单,但是这个向导表单没有显示向导 multiform 的 if 语句。请帮我解决向导表单。

网页

帮助找出向导多表单中的问题

0 投票
0 回答
61 浏览

python - Django-Storages - 关闭文件的 I/O 操作

我正在尝试在 Amazon S3 存储桶中上传文件。为此,我安装了最新版本的 Django-Storages。

虽然媒体正在从 S3 存储桶获得服务,但我无法将文件上传到 S3 存储桶。我收到此错误:

我在这里读到https://github.com/jschneier/django-storages/issues/382这个问题是 django-storages 版本的原因。我将版本更改为 1.6.0 然后我开始收到错误:

然后我更改了 django 版本,开始出现更多错误等等。我的第一个问题:这个 I/O 错误真的是由于 django-storages 版本造成的吗?如果是这样,那么当我使用的是所有东西的最升级版本时,如何应对这种情况?

0 投票
0 回答
531 浏览

python - 如何访问 Django 中的 S3Boto3StorageFile 以上传到其他位置?

在提交潜在客户时,我正在尝试将文件上传到我们的 CRM 管道驱动器。下面的一切都按计划工作,除了我views.py调用lead_file_upload()函数的时候。我收到以下错误:

expected str, bytes or os.PathLike object, not S3Boto3StorageFile

我假设这是我使用 AWS S3 Storage 和file_data = default_storage.open(file.file.file, 'rb')S3Boto3StorageFile 对象的结果。如何打开 S3Boto3StorageFile 对象,然后将其传递给lead_file_upload()函数?

models.py

forms.py

views.py

lead_file_upload() function: _

0 投票
1 回答
599 浏览

django - 使用 django-storages 在谷歌云存储中上传文件的 404

使用django-storages库将文件上传到谷歌云时,我得到

这是我在settings.py中的代码:

这是错误:

0 投票
1 回答
536 浏览

django - 通过 Django 直接将 CSV 文件上传到 S3

我正在创建一个连接到 Amazon S3 以保存用户上传文件的 django 应用程序。这是使用 django-storages 完成的。

在应用程序运行期间会生成一个 CSV 文件。我可以在本地保存文件。但是如何在不保存本地的情况下直接将文件上传到S3,同时将文件S3 URL保存在数据库中呢?

我曾尝试使用 StringIO 但会生成 TypeError: Unicode objects must be encrypted before hashing

任何建议/解决方案将不胜感激!

0 投票
1 回答
273 浏览

django - django-storages aws s3 成本降低和计算

我想计算并降低我在 s3 上的文件存储成本。

我已将我的 django 应用程序部署到欧罗巴(法兰克福)eu-central-1 的弹性豆茎。目前我使用一个 t2.micro ec2 实例、一个 db.t2.micro PostgreSQL 数据库和一个附加的标准 s3 存储桶,旁边是来自弹性 beanstalk 的标准存储桶。

我认为 ec2 和数据库的成本很容易管理,因为在免费层之后我想使用保留实例。但是 s3 的成本让我担心。

用户可以将文件上传和下载到我的应用程序。我的 django 应用程序使用 django-storages 来管理文件,但我不知道后台发生了什么以及我必须支付的费用。

例如,我有一个存储类和一个带有文件字段的模型:

- - 上传

我存储用户上传的文件,如下所示:

我认为这可能是一个 PUT 请求,因为我必须在我的区域内支付 0,0054 美元/1000 个请求。正确的?

- - 下载

如果用户想下载文件,我会返回一个 url:

这是哪个请求?GET 请求?一个 GET 请求的费用为 0,00043 美元/1000 个请求。但是如果用户打开返回的 url 也是一个 GET 请求吗?

- - 获取所有文件

在前端,用户获取属于特定文档的所有文件的列表。目前我返回一个文件的文件列表,如下所示:

我为此使用了 django rest 框架序列化程序:

这是什么样的要求?还有一个 GET 请求中的每个文件document.files.all()?在前端,只有名称很重要。如果我将文件的名称FileDocument另外存储在模型中并排除file序列化程序中的字段而不是发送 GET 请求?这能降低成本吗?

如果我不了解 django 存储何时以及发送什么样的请求,我认为计算成本非常棘手。

我知道我没有谈论数据库和文件存储空间的成本。我认为我可以忽略存储成本,因为此时我无法在不限制用户体验的情况下降低成本。此外,一开始我计划有 100 或 150 个用户,我认为每个用户上传的数据少于 1 GB。

感谢帮助!

0 投票
0 回答
59 浏览

javascript - 如何将我在一个时代单击 href 链接的文本传递到 JS 中的另一个页面,并且应该可以在 django 代码中使用?

这是用 Django 编写的代码。当我单击链接显示结果上的链接时,应保存 href 的文本链接(例如以下代码中 {{post.0}} 中呈现的 Redmi Note 5)并传递该文本{{pass.0 }} 并将{{pass.1}} 链接到另一个页面以获取相同的文本并将其用作标题。我该怎么做?

Page1.html

Page2.html

接受 JS 或 Django 中的建议。请帮我。