输入[type = file]返回空值

时间:2012-01-15 10:03:15

标签: python upload web.py

我有一个脚本,根据webpy cookbook创建一个带有表单的弹出窗口:

jQuery('#logo').click(function(){
    var content = ('<h1>Upload logo</h1>' +
        '<form method="POST" enctype="multipart/form-data" action="/upload">' +
        '<input type="file" id="myfile" accept="image/jpeg,image/png,image/gif" />' +
        '<button id="upload" type="submit">Загрузить</button></form>'
        );
    popup(content);
});

在我的python应用程序中,我有一个相关类的简单代码:

class uploadPage(allpages):
    def POST(self):
        x = web.input(myfile={})
        print x

但是当我尝试上传文件时,我总是得到空的存储对象。

1 个答案:

答案 0 :(得分:1)

<input type="file" />元素没有name属性,表示表单提交中的文件名。该名称是必需的,因为您可以在一个表单中包含多个输入字段,包括file个字段。添加name=可以解决您的问题:

'<input type="file" name="myfile" id="myfile" accept="image/jpeg,image/png,image/gif" />'
//                  ^^^^^^^^^^^^^