Flask-HelloWorld-06 文件上传

本文详细介绍了如何在HTML端使用form属性实现文件上传,并在服务器端通过request.files接收文件,最后将文件保存到静态文件夹下的具体步骤与代码示例。
一、文件上传html端
form 属性设置:method="post" enctype="multipart/form-data"
input type="file"
二、server端
文件接受 request.files['filename']
返回一个类似文件对象,这个对象可以进行接受文件操作,save方法,以及文件对应的属性操作
三、把文件保存在static文件夹下

调用save方法

四、代码示例

# coding=utf-8
from flask import Flask, request, render_template
import os

app = Flask(__name__)

@app.route('/', methods=['POST', 'GET'])
def upload():
    if request.method == 'POST':
        headimg = request.files['headimg']
        print(os.path.join(r'D:\Flask\flask_3\static',headimg.filename))
        headimg.save(os.path.join(r'D:\Flask\flask_3\static',headimg.filename))
        return 'filename is %s ' % headimg.filename
    else:
        return render_template('upload.html')


if __name__ == '__main__':
    app.run()

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>

    <form action="" method="post" enctype="multipart/form-data">
       upload: <input type="file" name="headimg">
        <input type="submit" name="upload">
    </form>
</body>
</html>


Flask是一个基于Python的轻量级Web框架,通过使用它我们可以快速搭建起一个个性化的博客网站。 首先,我们需要安装Flask。可以使用pip命令来进行安装,如下所示: ``` pip install flask ``` 接下来,我们需要创建Flask应用程序。在项目目录下创建一个名为app.py的文件,并在其中编写如下代码: ```python from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return 'Hello, World!' if __name__ == '__main__': app.run() ``` 在这个例子中,我们创建了一个名为app的Flask应用程序,并在根路由上定义了一个index函数作为视图函数。这个函数返回一个简单的字符串"Hello, World!"。 接下来,我们可以运行这个应用程序。在命令行中执行以下命令: ``` python app.py ``` Flask会在本地启动一个开发服务器,默认监听端口为5000。我们可以在浏览器中访问`http://localhost:5000`来查看效果。 在实际开发中,我们可以创建多个视图函数来处理不同的路由请求,并使用模板引擎来渲染页面。使用Flask,我们可以轻松地实现用户认证、博客文章的展示与编辑、评论功能等。 使用Flask扩展,我们可以更加方便地集成数据库ORM(对象关系映射)工具、表单验证以及文件上传等功能。 总结来说,Flask是一个灵活且功能丰富的Web框架,通过Python语言的简洁和可读性,我们可以快速搭建起一个个性化的博客网站,并实现各种功能需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值