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

Хорошо, я попробовал почти все, и я не могу заставить это работать.

У меня есть модель Django с ImageField на немУ меня есть код, который загружает изображение через HTTP (проверено и работает)Изображение сохраняется непосредственно в папке upload_to (то, что загружено в папку ImageField)Все, что мне нужно сделать, это связать уже существующий путь к файлу изображения с ImageField

Я написал этот код около 6 разных способов.

Проблема, с которой я сталкиваюсь, состоит в том, что весь код, который я пишу, приводит к следующему поведению: (1) Django создаст второй файл, (2) переименует новый файл, добавив _ в конец файла name, то (3) не передавать какие-либо данные, оставляя их в основном пустым переименованным файлом В пути «upload_to» осталось 2 файла, один из которых является фактическим изображением, а другой - именем изображения, но пустым, и, конечно, путь ImageField установлен на пустой файл, который пытается создать Django. ,

Если это неясно, я попытаюсь проиллюстрировать:

## Image generation code runs.... 
/Upload
     generated_image.jpg     4kb

## Attempt to set the ImageField path...
/Upload
     generated_image.jpg     4kb
     generated_image_.jpg    0kb

ImageField.Path = /Upload/generated_image_.jpg

Как я могу сделать это без попытки Django повторно сохранить файл? Что мне действительно нравится, так это что-то в этом роде ...

model.ImageField.path = generated_image_path

... но, конечно, это не работает.

И да, я прошел через другие вопросы здесь, какэтот а также Django док нафайл

ОБНОВИТЬ После дальнейшего тестирования, это происходит только при работе под Apache на Windows Server. Во время работы под «runserver» на XP он не выполняет это поведение.

Я в тупике.

Вот код, который успешно работает на XP ...

f = open(thumb_path, 'r')
model.thumbnail = File(f)
model.save()

Ответы на вопрос(14)

Ваш ответ на вопрос