좋아, 나는 거의 모든 것을 시도했지만 이것을 작동시킬 수 없다.
- ImageField가있는 장고 모델이 있습니다.
- HTTP를 통해 이미지를 다운로드하는 코드가 있습니다 (테스트 및 작동)
- 이미지는 'upload_to'폴더 (ImageField에 설정되어있는 upload_to)에 직접 저장됩니다.
- 이미 존재하는 이미지 파일 경로를 ImageField와 연결하기 만하면됩니다.
이 코드를 6 가지 방법으로 작성했습니다.
내가 겪고있는 문제는 내가 쓰고있는 모든 코드가 다음과 같은 결과를 초래한다는 것입니다. (1) Django는 두 번째 파일을 만들고 (2) 새 파일의 이름을 바꾸고 파일 끝에 _를 추가합니다 이름을 입력 한 다음 (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
... 물론 작동하지 않습니다.
그리고 그래 내가 좋아하는 여기에 다른 질문 겪었어요 이것 뿐만 아니라에서 장고 문서 파일
업데이트 추가 테스트 후 Windows Server의 Apache에서 실행될 때만이 동작이 수행됩니다. XP에서 'runserver'로 실행하는 동안에는이 동작이 실행되지 않습니다.
나는 충격을 받았다.
XP에서 성공적으로 실행되는 코드는 다음과 같습니다.
f = open(thumb_path, 'r')
model.thumbnail = File(f)
model.save()