FLASK 上传文件

HTML

form enctype="multipart/form-data"

编码类型 说明
application/x-www-form-urlencoded 表单数据编码为名称/值对。 这是标准编码格式。
multipart/form-data 表单数据编码为消息,页面上每个控件都有单独的部分。
text/plain 表单数据以纯文本编码,没有任何控件或格式字符。

form action = url地址

html 复制代码
<form action="/upload" method="post" enctype="multipart/form-data">

本来action属性是<form>元素的一个重要属性,它定义了当表单被提交时,表单数据应该发送到哪里(即哪个URL)。这个URL指向的服务器上的资源将负责处理这些提交的数据。

这里可以理解为绑定了后端函数,因为该地址规定了处理函数:

python 复制代码
@app.route('/upload', methods=['POST'])
def upload():

FLASK

后端声明

python 复制代码
import os
from flask import Flask, render_template, request, send_from_directory, redirect, url_for
from werkzeug.utils import secure_filename

app = Flask(__name__)
UPLOAD_FOLDER = 'static/uploads'
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
# 确保目录存在
os.makedirs(UPLOAD_FOLDER, exist_ok=True)

@app.route('/')
def index():
    return render_template('index.html')

@app.route('/upload', methods=['POST'])
def upload():
    if 'file' not in request.files:
        return redirect(request.url)
    file = request.files['file']
    if file.filename == '':
        return redirect(request.url)
    if file:
        filename = secure_filename(file.filename)
        file_path = os.path.join(app.config['UPLOAD_FOLDER'], filename)
        file.save(file_path)

        return render_template('index.html', original=filename)

附录

<p>定义一个段落。

<hr>代表章节、文章或其他长内容中段落之间的分隔符。

<pre>代表其内容已经预先排版过,格式应当保留 。

<blockquote>代表引用自其他来源的内容。

<ol>定义一个有序列表。

<ul>定义一个无序列表。

<li>定义列表中的一个列表项。

<dl>定义一个定义列表(一系列术语和其定义)。

<dt>代表一个由下一个<dd>定义的术语。

<dd>代表出现在它之前术语的定义。

<figure>代表一个和文档有关的图例。

<figcaption>代表一个图例的说明。

<div>代表一个通用的容器,没有特殊含义。

相关推荐
m0_747854521 分钟前
php怎么使用PHP PM热重启_php如何零停机更新生产环境代码
jvm·数据库·python
四维迁跃1 分钟前
如何提升SQL数据更新的安全性_使用行级锁与悲观锁机制
jvm·数据库·python
老刘说AI3 分钟前
Text2SQL到数据智能
人工智能·python·低代码·语言模型·langchain
knight_9___4 分钟前
RAG面试篇10
人工智能·python·机器学习·agent·rag
格林威4 分钟前
面阵相机 vs 线阵相机:堡盟与海康相机选型差异全解析+python实战演示
开发语言·人工智能·python·数码相机·计算机视觉·视觉检测·工业相机
2301_817672267 分钟前
CSS如何控制placeholder文字的颜色_使用--placeholder伪元素.txt
jvm·数据库·python
TechWayfarer8 分钟前
App还是Web?IP段归属查询的工具适配与实战指南
python·tcp/ip·网络安全
B站_计算机毕业设计之家9 分钟前
计算机毕业设计:Python股票投资辅助决策系统 django框架 request爬虫 协同过滤算法 数据分析 可视化 大数据 大模型(建议收藏)✅
爬虫·python·深度学习·算法·django·flask·课程设计
m0_6845019811 分钟前
Go语言怎么操作Word文档_Go语言Word文档生成教程【精通】
jvm·数据库·python
SariHcr12318 分钟前
Openarm机器人双臂模型仿真从零部署
c++·人工智能·python·机器人·bash·openarm