python - Masonite - AttributeError > 'str' 对象没有属性 'filename'

标签 python frameworks masonite

我有一个如下所示的表单:

<form method="POST" action="/posts">
    {{ csrf_field }}
    <input type="text" name="username">
    <input type="file" name="image">

    <input type="submit" value="Submit">
</form>

但是当我提交此表单并尝试上传时,我只得到图像的名称:

def posts(self, request: Request, upload: Upload):
    upload.store(request().input('image'))

我遇到了异常:

AttributeError >“str”对象没有属性“filename”

最佳答案

抛出此错误是因为您没有在此处的 HTML 表单上设置编码:

<form method="POST" action="/posts">

这应该更改为:

<form method="POST" action="/posts" enctype="multipart/form-data">

这将对图像进行编码,以便 Masonite 可以将其作为对象而不是字符串读取。

关于python - Masonite - AttributeError > 'str' 对象没有属性 'filename',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53686542/

相关文章:

仅订阅和触发自定义事件的 JavaScript 框架?

python - 该脚本中 StringIO() 的用途是什么?

python - Masonite:生产数据迁移

python - 如何手动使用 make_password 和 check_password?

javascript - 为 Apigee Edge 上的 Google Maps at work API 生成 HMAC 签名

python - 使用 Python os.system 将 MySQL 数据库导出到 sql 文件

Python 和子进程 - 以用户身份打开终端 session 并执行一个/两个命令

frameworks - Clojure Web 框架的比较