Tornado обработчик думает, что пост отсутствует аргумент, когда Firebug показывает, что аргумент отправляется
Вопрос
У меня есть простая форма, используя метод Post, состоящий из текстового поля и файла. После удара отправиться, я вижу пост в Firebug следующим образом:
Parts multipart/form-data
posttext Some text
image BlahJFIFBlahExifBlahPhotoshopBlahBinaryStuff etc...
Обработчик торнадо, который получает, похоже на себя:
class NewPostHandler(BaseHandler, MessageMixin):
@tornado.web.authenticated
def post(self):
message = {
'posttext':self.get_argument('posttext'),
'image':self.get_argument('image'),
etc
Но обработчик торнадо возвращается:
[W 100618 23:07:32 web:775] 404 POST /a/message/new (127.0.0.1): Missing argument image
Я не совсем уверен, что я делаю не так. Я правильно, думая «аргумент» означает атрибут «имя имени» входного элемента? Как я могу заставить обработчик увидеть аргумент?
Спасибо за вашу помощь, я боролся с этим в течение часа и должен признать, что я намазал!
Решение
Для загрузки файлов вы должны использовать self.request.files
вместо self.get_argument()
.
Не связан с StackOverflow