3

我有一个 Django 应用程序,它提交一个包,应该返回其中的值。将表单提交到一个名为“插入”的视图:

request.FILES['file']

返回文件对象,但它是一种 <InMemoryUploadedFile>。我需要的是一种获取上传文件的绝对路径的方法,这样我就可以将它提供给一个返回所需值的方法

有谁知道我怎么能做到这一点?

谢谢

4

2 回答 2

14

当然,“InMemory”这个名字是文件只存在于内存中的线索,所以没有路径吗?

于 2010-05-02T14:40:51.117 回答
1

丹尼尔罗斯曼在上下文中是正确的。.create(...)但是,如果您已经使用or将对象创建/插入到数据库中obj.save()。可以使用 检索图像的路径obj.<field_name>.name。例子:

假设您有一个带有图像字段的模型。

my_image = models.ImageFiled(upload_to='my_upload_dir')

所以,

obj = ImageModel.objects.create(image=request.FILES['image']) # let's insert it to db
image_path = obj.image.name

# will return 
'my_upload_dir/myimagename.jpg'
于 2021-08-16T10:45:21.473 回答