Flask 创建文件目录,删除文件目录

 项目结构

 app.py

from flask import Flask, render_template, request, redirect, url_for
import osapp = Flask(__name__)
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
FILE_DIR = os.path.join(BASE_DIR, 'testfile')@app.route('/', methods=['GET', 'POST'])
def index():if request.method == 'POST':if 'create' in request.form:dirname = request.form.get('dirname')os.mkdir(os.path.join(FILE_DIR, dirname))elif 'delete' in request.form:dirname = request.form.get('dirname')os.rmdir(os.path.join(FILE_DIR, dirname))return redirect(url_for('index'))directories = os.listdir(FILE_DIR)return render_template('index.html', directories=directories)if __name__ == '__main__':if not os.path.isdir('testfile'):os.makedirs('testfile')app.run(debug=True)

templates / index.html

<!DOCTYPE html>
<html>
<head><title>File Manager</title>
</head>
<body><h1>File Manager</h1><form method="POST"><input type="text" name="dirname" placeholder="Directory Name"><input type="submit" name="create" value="Create Directory"><input type="submit" name="delete" value="Delete Directory"></form><ul>{% for directory in directories %}<li>{{ directory }}</li>{% endfor %}</ul>
</body>
</html>

效果图

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/7697.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTTP和HTTPS的区别

一、两者概念 1.1 HTTP概念 HTTP 的全称是超文本传输协议&#xff08;HyperText Transfer Protocol&#xff09; 是一种用于分布式、协作式和超媒体信息系统的应用协议&#xff0c;简单来说就是一种分布和接收HTML页面的方法&#xff0c;被用于在Web浏览器和网站服务器之间传递…

认识tomcat

Tomcat作为流行的JavaWeb应用服务器,其工作原理可以简要总结如下几点: Tomcat实现了Servlet和JSP规范,可以运行相关的Web应用。 Tomcat由Catalina、Coyote和Jasper等模块组成。Catalina负责Servlet容器,Coyote实现连接器。 服务器由一个或多个服务构成,服务包含多个连接器和容…

jenkins

Gitlab添加钩子 测试钩子 添加完成后&#xff0c;下面会出现钩子选择。点击test中的&#xff0c;push event。 出现successful&#xff0c;既添加成功。 如果添加失败&#xff0c;报错&#xff0c;更改Network

JMerter安装配置以及使用(笔记记录)

JMerter安装配置以及使用&#xff08;笔记记录&#xff09; 安装JDK安装JMeterJMeter使用元件执行的顺序参数详解参数配置之CSV数据文件设置断言响应断言JSON断言 数据提取XPath提取器JSON提取器 JMeter属性JMeter录制脚本JMeter直连数据库逻辑控制器如果&#xff08;IF&#x…

数据库概述和DDL语句(学会并使用数据库day1)

数据库概述和DDL语句&#xff08;day1&#xff09; 一、数据库概述概念数据库的集中式控制有什么优点数据库分类mysql数据库mysql简介基本术语数据表的组成 数据库管理系统数据库管理系统、数据库和表的关系 二、SQL的概念三、SQL语句分类1、SQL语句被分为四大类2、MySQL的语法…

Databend 开源周报第 103 期

Databend 是一款现代云数仓。专为弹性和高效设计&#xff0c;为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务&#xff1a;https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展&#xff0c;遇到更贴近你心意的 Databend 。 创建网络策略 …

Blender自动化脚本,无人值守批量渲图/渲视频

渲染视频是个非常耗时的大工程&#xff0c;如果要渲染多个视频或者每个视频还需要切换不同的贴图、颜色等&#xff0c;工作量就更离谱了&#xff0c;所以不得不用脚本实现自动化。 Blender的脚本是用Python编写&#xff0c;比PS的js要方便很多。再下载一套Blender对应版本的AP…

24.实现线性拟合和相关系数(matlab程序)

1.简述 1. 基本语法 1.1 corr函数基本语法 语法 说明 rho corr(X) 返回输入矩阵X中每对列之间的两两线性相关系数矩阵。 rho corr(X, Y) 返回输入矩阵X和Y中每对列之间的两两相关系数矩阵。 [rho, pval] corr(X, Y) 返回pval&#xff0c;一个p值矩阵&#xff0c…

redis安装

安装redis 安装依赖环境 yum install -y gcc cd /opt tar -xf redis-5.0.7.tar cd redis-5.0.7/ make && make install PREFIX/usr/local/redis installvim /opt/redis-5.0.7/utils/install_server.shcd /opt/redis-5.0.7/utils ./install_server.sh Please select the…

极简并优雅的在IDEA使用Git远程拉取项目和本地推送项目

连接Git 搜索Git然后将你下载好的Git的文件目录位置给他弄进去就行 本地分支管理 分支管理通常是在IDEA的右下角找到 连接远程仓库 方法1本地项目推送到远程仓库 如果当前项目还没交给Git管理的则按照以下图所示先将项目交给Git管理 然后此时文件都会是红色的&#xff0c;这表…

c++ 职责链+策略模式,实现链式过程处理

想象一下一件商品的加工&#xff0c;需要经过多道工艺流程处理。这一道道工艺流程就像是一个职责链&#xff0c;从头到尾传递。就好像网络传输时&#xff0c;消息发送到对端主机&#xff0c;经过协议栈&#xff0c;在这个过程中&#xff0c;它在不同的协议栈层级中被一层层抽丝…

《实战AI模型》——赶上GPT3.5的大模型LLaMA 2可免费商用,内含中文模型推理和微调解决方案

目录 准备环境及命令后参数导入: 导入模型: 准备LoRA: 导入datasets: 配置Config:

C# 存在重复元素

217 存在重复元素 给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 &#xff0c;返回 true &#xff1b;如果数组中每个元素互不相同&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3,1] 输出&#xff1a;true 示例 2&#xff1a; 输…

从小白到大神之路之学习运维第67天-------Tomcat应用服务 WEB服务

第三阶段基础 时 间&#xff1a;2023年7月25日 参加人&#xff1a;全班人员 内 容&#xff1a; Tomcat应用服务 WEB服务 目录 一、中间件产品介绍 二、Tomcat软件简介 三、Tomcat应用场景 四、安装配置Tomcat 五、配置目录及文件说明 &#xff08;一&#xff09;to…

docker版jxTMS使用指南:站点的调整

本文讲解4.4版jxTMS中的站点的调整&#xff0c;整个系列的文章请查看&#xff1a;[docker版jxTMS使用指南&#xff1a;docker版jxTMS使用指南&#xff1a;4.4版升级内容 docker版本的使用&#xff0c;请查看&#xff1a;docker版jxTMS使用指南 4.0版jxTMS的说明&#xff0c;请…

zabbix钉钉报警

登录钉钉客户端,创建一个群,把需要收到报警信息的人员都拉到这个群内. 然后点击群右上角 的"群机器人"->"添加机器人"->"自定义", 记录该机器人的webhook值。 添加机器人 在钉钉群中&#xff0c;找到只能群助手 添加机器人 选择自定义机…

【玩转Linux】文件的一些概念

(꒪ꇴ꒪ ),hello我是祐言博客主页&#xff1a;C语言基础,Linux基础,软件配置领域博主&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff01;送给读者的一句鸡汤&#x1f914;&#xff1a;集中起来的意志可以击穿顽石!作者水平很有限&#xff0c;如果发现错误&#x…

怎样接入chatGPT

官网链接&#xff1a; OpenAI platform

Unity Coroutine 协程

Unity Coroutine 是一种在 Unity 引擎中实现异步编程的技术&#xff0c;它可以让你在多个帧中分段执行一个函数&#xff0c;而不是一次性地执行完毕。Coroutine 可以使用 yield 语句来暂停和恢复执行&#xff0c;从而实现一些复杂的逻辑和效果&#xff0c;如时间延迟、循环动画…

UE4/5C++多线程插件制作(十四、MTPAbandonable)

目录 MTPAbandonable h实现 cpp实现 MTPMarco.h 首先是异步任务的宏定义部分: