Ошибка обработки формы при загрузке в Appblue Blobstore

Я использую django-nonrel и django-filetransfer @wkornewald для Google App Engine.

Я могу загружать файлы просто отлично, но только когда действительна вся форма. Если форма не проходит проверку для любого поля, она полностью взрывается, а не возвращается пользователю для исправления изменений.

сообщение об ошибке:

INFO 2011-03-10 20:27:09,496 dev_appserver.py:535] Internal redirection to /admin/rr/member/add/ INFO 2011-03-10 20:27:09,662 dev_appserver_blobstore.py:328] Upload handler returned 200 ERROR 2011-03-10 20:27:09,662 dev_appserver_blobstore.py:341] Invalid upload handler response. Only 301, 302 and 303 statuses are permitted and it may not have a content body. INFO 2011-03-10 20:27:09,680 dev_appserver.py:3317] "POST /_ah/upload/ag5kbXJvbGxpbnJlbGljc3IcCxIVX19CbG9iVXBsb2FkU2Vzc2lvbl9fGIkBDA HTTP/1.1" 500 - 

У меня есть простая модель, которая выглядит так:

 class Member(PhotoMixin, models.Model): name = models.CharField(max_length=50) name2 = models.CharField(max_length=50, blank=True) member_since = models.DateField(blank=True, null=True) full_size_image = models.FileField(verbose_name="Photo", upload_to='members/') is_active = models.BooleanField(default=True) 

Есть ли способ, которым я могу более грациозно справиться с этим? Я чувствую его, вероятно, потому, что django-filetransfers хочет, чтобы вы отправили форму на URL-адрес загрузки blob, и этот URL-адрес не знает, что делать с неудачей. Должен ли быть промежуточный шаг, который обрабатывает большую часть формы и сообщений в URL-адресе загрузки, если и только если все остальное действительно?

One Solution collect form web for “Ошибка обработки формы при загрузке в Appblue Blobstore”

Для атрибута blobstore api требуется просмотр обработчика загрузки, чтобы вернуть перенаправление.

поскольку вышеописанный журнал ошибок:

 Only 301, 302 and 303 statuses are permitted and it may not have a content body. 

Чтобы обойти это, я изменил методы add_view и change_view ModelAdmin, чтобы возвратить перенаправление при отказе проверки формы, но привязался к строке запроса, чтобы входные значения не были потеряны.

Затем, при инициализации формы в запросе GET, я проверяю «failed_validation» в параметрах запроса, чтобы указать, чтобы отправить данные формы в формы / формы, чтобы активировать проверку.

Код находится на битбакете: https: //aaronmadison@bitbucket.org/aaronmadison/django-filetransfers .

Теперь вы можете загрузить в blobstore и обрабатывать ошибки … yay.

  • Избранные приложения с открытым исходным кодом Google App Engine (Java или Python)
  • Передача данных между страницами в функции redirect () в Google App Engine
  • Что хорошего места для хранения конфигурации в Google AppEngine (python)
  • appengine запускает неудачные задачи дважды, даже если task_retry_limit = 0
  • Как импортировать папку lib внутри модулей
  • GAE Webapp2 - разрушающий сеанс не работает
  • Получить исходное имя файла Google
  • Загрузите и проанализируйте файл csv с помощью «универсальной новой строки» в python в Google App Engine
  • Перенос пользователей из Google App Engine в Google OpenID
  • Не удалось найти Python PIL library.Google App Engine
  • App Engine: Является ли time.sleep () подсчетом к моим квотам?
  • Python - лучший язык программирования в мире.