问题标签 [django-file-upload]

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 回答
224 浏览

django - Django Rest_Framework 使用 Ajax 上传文件

我是 django rest_framework 的初学者。

我想为我的项目实现文件上传功能,我做了一些搜索,但我找不到任何有用的例子。

那么,有没有人可以告诉我一些关于rest框架文件上传的参考或示例?

0 投票
1 回答
1327 浏览

django - 将参数传递给Django中的upload_to函数

我尝试将实例的多个图像上传到不同的子文件夹。但是我还需要重命名每个上传的文件,所以我为 upload_to 字段实现了一个函数,如下所示。

但是,我不确定如何将图像划分为子文件夹logoscover_images 最好将参数传递给 get_path 函数,例如

我是否需要为每个文件字段编写不同的 upload_to 函数?

0 投票
1 回答
728 浏览

django - Django:验证时忘记/删除 FileField 的表单字段输入

我在 Django 中有以下设置。由 CharField 验证的文本输入和用于图像上传的 FileField。当字段为空时,期望的响应应该是表单上的原始数据存在并且用户需要做的就是填写缺失的数据。我列出了可能需要验证的两种情况以及应用程序如何响应的当前状态:

  • 文本存在,但图像被遗忘。重新加载后的结果:原来在帖子中的文本仍然存在,用户所要做的就是上传文件。这可以按需要工作。优秀的
  • 文字被遗忘,但图像存在。重新加载后的结果:图像不再存在,需要用户重新上传,这是不可取的。

验证后如何保留文件数据?

视图.py

表格.py

0 投票
3 回答
3140 浏览

django - 在 Django 中保留 FileField 的原始文件名

我想保留UploadedFileDjango 中的原始文件名,其位置存储在FileField. 现在我观察到,如果两个文件具有相同的名称,则上传的第一个文件保留其原始名称,但第二次上传具有该名称的文件时,它会附加一个随机字符串以使文件名唯一。一种解决方案是在模型中添加一个附加字段:Django: How to save original filename in FileField? 使用 FileField 在 Django 中保存原始文件名,但这些解决方案似乎不是最理想的,因为它们需要更改Model字段。

另一种方法是在文件前面添加一个随机目录路径,确保在给定目录中文件名是唯一的,并允许basename保持不变。做到这一点的一种方法是传递一个可调用upload_to的函数。另一种选择是子类化FileField并覆盖get_filename以不将输入文件名剥离为basename允许调用者传入带有前置路径的文件名。如果我想使用,后一个选项并不理想,ImageField因为我也必须对其进行子类化。

0 投票
3 回答
3338 浏览

django - JSON中的Django REST框架文件字段数据

在 Django REST Framework (DRF) 中,我如何支持反序列化base64编码的二进制数据?

我有一个模型:

我希望能够以 base64 编码的形式发送这些数据,而不必发送多部分表单数据或“文件上传”。查看Parsers, onlyFileUploadParser并且MultiPartParser似乎解析出文件。

我希望能够以 JSON 之类的方式发送这些数据(即在data而不是发送二进制数据files

0 投票
2 回答
1893 浏览

jquery - Django 表单在 AJAX 请求上无效(form.is_valide() 返回 False)

我有一个包含 ImageField 的模型的表单,我希望用户能够通过 AJAX 提交图像。

问题是 form.is_valide() 返回 False。当我不使用 AJAX 时,一切似乎都很好。我在类似问题上尝试了几个 SO 答案,但没有运气。

查看 (简化版)

HTML

JS/jQuery

非常感谢我能得到的任何帮助。谢谢

0 投票
1 回答
1470 浏览

django - Django Filefield 或 imagefield - 检查与另一个图像或文件的相等性

我有一个带有 ImageField 的模型,并且数据库中有大约 100 个模型实例。其中一些实例具有相同的位图图像(但保存在不同的路径位置,path = obj.first_name + obj.date_of_creation)。

我想搜索所有 obj.images,如果内容(在位图意义上)与新图像(我会指定)相同,我想替换 obj。带有新图像的图像。如何在 Django 的文件级别/位图级别检查这种相等性?

谢谢

0 投票
1 回答
356 浏览

python - Django 文件存储保存方法根据文件名创建路径

我正在尝试使用Django中的文件存储。一切正常,但我猜是我的保存方法中的一件事。我有一个模型FileField

在我的模型中的这种方法中,我创建了file_path

我使用的文件存储方法在我的storage.py中外包,我在我的 models.py 中导入

现在,当我在 django 的管理界面中创建一个新文件时,它成功上传了文件,使用正确的文件路径创建了一个数据库条目,但未能创建正确的路径。当我的文件名是foo时,路径如下所示:

cwd/文件/foo/foo

如果它的名字是bar.txt它看起来像下面这样:

cwd/文件/bar.txt/bar.txt

我不希望 django 基于文件名创建子目录。你们能帮帮我吗?

0 投票
1 回答
1465 浏览

python - 卷曲:HTTP/1.1 100 文件上传继续消息

我在我的一个 django 项目中使用 curl 上传文件,它在 localhost 中运行良好,但是当我在远程服务器中托管项目时,它不起作用。

我正在从这个命令发送文件

在views.py中,我将此文件处理为

当我在本地机器上运行时,这工作得很好,但是用 curl 返回发送 POST 请求到远程服务器

什么也不做。文件正在上传。我应该怎么办。

谢谢

编辑 1:我尝试从其他视图方法发送一些其他 HttpResponse(文件名),它工作正常,但是当我处理文件时,它只是发送 HTTP/1.1 100 Continue

0 投票
1 回答
1657 浏览

python - Uploading image from Imagefield in django

I am new to Django.I have the following code on my html file:

and my views.py for the above code is:

Now browsers do not return the absolute path of the file from user's local device, it just gathers filename because ofsome security issues but a.photo.save('somename.png', File(open(f, 'r'))) this part of my code needs absolute path of user local device that is something like /home/abc/Pictures/sec.png all i get is sec.png and hence i am unable to upload.

From python manage.py shell:

This works fine. Is there some workaround. I dont want to use Form.