快速问题:如何在Django中将文件与ImageField关联?

0 投票
2 回答
863 浏览
提问于 2025-04-16 06:06

我在硬盘上保存了一张图片,现在想把它放到一个叫做ImageField的地方,但我不知道该怎么做。

我试过这样的方法:

object.imagefield.save(path,File(open(path)))

但是这样会多出一份(无效的)图片副本。

有人能帮帮我吗?

谢谢!

2 个回答

2

可能有更好的方法,但我通常是这样做的:

from django.core.files.base import ContentFile

srcFile = ContentFile( srcData ) # srcData is the contents of the local file
srcFile.open()
myObject.image.save(name=filename, content=srcFile)
7

我通常会直接把图片的路径用字符串的形式赋值给图片字段,像这样:

MyObject.image="/photo_path/photo_name.jpg"
MyObject.save()

我不知道这样做是否有什么问题,但它总是能正常工作。

撰写回答