Программно сохранить изображение в Django ImageField 2

Я прочитал много ответов и попробовал все это в оболочке, но не хочет правильно сохранять мой локальный образ, он обрезает файлы. Когда размер изображения составляет 400 КБ, он создает файл в медиа-каталоге размером 10-30 КБ. Я не знаю почему. Например, у меня есть изображение с путем d:/1.png. Я старался

from django.core.files import File
fileObject=File(open("d:/1.png"))
object.image.save('1.png',fileObject,True)

fileObject.size показывает правильный размер изображения, но object.image.size неверен и файл, который он сохраняет, не полный. Также я пытался

from django.core.files.temp import NamedTemporaryFile
temp = NamedTemporaryFile()#with delete=True TypeError: __init__() got an unexpected keywork argument 'delete'
temp.write(open('d:/1.png').read())
temp.flush()
f=File(temp)#f.size not correct
object.image.save('1.png',f,True)
and object.image.size and file not correct, file not full.

Я пытался использовать StringIO, но это тоже не работает. Я не знаю, что пытается сохранить эти изображения правильно. Пожалуйста помоги.


person Lagovas    schedule 01.07.2012    source источник


Ответы (1)


вам нужно изменить режим на двоичный

fileObject=Файл(открыть("d:/1.png", режим="rb"))

person pma_    schedule 12.10.2012