Heroku가 30 초 후에 시간이 초과되므로 사용자 제출 파일을 S3에 직접 업로드해야합니다. S3에 업로드 한 후에 데이터베이스에 항목을 삽입하여이 파일을 받았음을 기록합니다. 여기 내 모델의 :Boto-Django가 처리 한 FileField에 대한 Model.save() 덮어 쓰기
class UserUploadedFile(models.Model):
id = models.AutoField(primary_key=True)
uid = models.ForeignKey('auth.user', editable=False, db_column='uid')
filepath = models.FileField(storage=S3BotoStorage(bucket='whatever'), upload_to='/')
그러나 BOTO가 자동으로 호출되기 때문에 내가 지금처럼) (저장 호출 할 때, BOTO 파일 처리하기 위해 호출됩니다
file = UserUploadedFile(uid=request.user, filepath=key)
file.save()
이 (내가 파일 경로를 필요로 할 처리 할을 . BOTO에 의해 그래서 나중에는 URL, 파일 크기, & C를 얻을 수 있습니다, 그래서 문자열로 파일 경로를 켤 수 없습니다)
을 어쨌든, 그렇게 해결하기 위해 BOTO 등) (저장 무시하려고했습니다.
내 주요 질문 여부'UserUploadedFile' object has no attribute 'raw'
나는 분명히이 상황에서() 원시 호출하는 방법을 잘 모르겠어요 ...
:하지만 ... 4,
는하지만이 오류가 이것은이 테이블에 쓰고있을 때 저장소 엔진을 우회하는 올바른 방법이거나 더 깨끗한 방법이 있다면입니다.
감사합니다.
이 가능 장고를 사용하는 데 사용하면 심지어 아마존 S3를 지원 장고 - 스토리지 http://django-storages.readthedocs.org/en/latest/index.html 같은 응용 프로그램과 함께 사용자 정의 백엔드 스토리지 백엔드를 오버라이드 (override)하는 수 - 보토없는 창고? Boto는 장고 저장소가 S3 백엔드를 처리하는 방법이라고 생각했습니다. 나는 현재 둘 다 사용하고있다. (늦은 응답으로 죄송합니다.이 알림이 표시되지 않았습니다.) – TAH