当前位置: 首页 > wzjs >正文

毕设做网站可以得高分吗友情链接怎么连

毕设做网站可以得高分吗,友情链接怎么连,深圳 网站建设培训,怎样做免费网站摘要 这篇博客详细介绍了如何使用Flask框架实现单张图片上传功能,并支持上传后的图片预览。内容包括文件上传表单的创建、服务器端文件接收与存储、图片预览的前端实现(如使用JavaScript或Flask静态文件处理),以及安全性考虑&…

摘要

这篇博客详细介绍了如何使用Flask框架实现单张图片上传功能,并支持上传后的图片预览。内容包括文件上传表单的创建、服务器端文件接收与存储、图片预览的前端实现(如使用JavaScript或Flask静态文件处理),以及安全性考虑(如文件类型验证)。通过示例代码,读者可以快速掌握图片上传与预览的核心实现方法。

在这里插入图片描述

提示词

采用大模型:通义千问(代码模式)

实现一个单张图片上传的Flask项目,要求:
## UI框架
- 采用bootstrap 5.3.x版本
## 页面布局
页面分为上下两个部分,上面部分为图片上传,下面部分为图片浏览。
### 图片上传部分
- 图片选择框
- 图片上传按钮
### 图片浏览部分
- 采用格栅系统排版
- 一行显示4张图片
## 服务器端
- 在.env文件中配置图片路径的环境参数
- 图片文件存放在静态目录下的upload目录中
- 在upload目录创建files.json文件,记录所有已上传的图片,含图片文件名
## 其它
- 页面屏幕居中
- 采用响应式页面设计

输出

为了实现这个单张图片上传的Flask项目,我们需要创建几个文件和目录。以下是完整的项目结构和代码:

项目结构

flask_image_upload/
│
├── .env
├── app.py
├── static/
│   └── upload/
│       └── files.json
└── templates/└── index.html

创建.env文件

.env文件中配置图片路径的环境参数:

UPLOAD_FOLDER=static/upload
FILES_JSON_PATH=static/upload/files.json

创建app.py文件

这是Flask应用的主要文件,包含路由、图片上传处理逻辑等。

from flask import Flask, render_template, request, redirect, url_for
import os
import json
from dotenv import load_dotenvload_dotenv()app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = os.getenv('UPLOAD_FOLDER')
app.config['FILES_JSON_PATH'] = os.getenv('FILES_JSON_PATH')if not os.path.exists(app.config['UPLOAD_FOLDER']):os.makedirs(app.config['UPLOAD_FOLDER'])if not os.path.isfile(app.config['FILES_JSON_PATH']):with open(app.config['FILES_JSON_PATH'], 'w') as f:json.dump([], f)def save_file_info(filename):with open(app.config['FILES_JSON_PATH'], 'r+') as f:data = json.load(f)if filename not in data:data.append(filename)f.seek(0)json.dump(data, f, indent=4)@app.route('/', methods=['GET', 'POST'])
def index():if request.method == 'POST':file = request.files.get('file')if file and allowed_file(file.filename):filename = file.filenamefile.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))save_file_info(filename)return redirect(url_for('index'))with open(app.config['FILES_JSON_PATH'], 'r') as f:images = json.load(f)return render_template('index.html', images=images)def allowed_file(filename):return '.' in filename and filename.rsplit('.', 1)[1].lower() in {'png', 'jpg', 'jpeg', 'gif'}if __name__ == '__main__':app.run(debug=True)

创建templates/index.html文件

这是前端页面模板,使用Bootstrap 5.3.x进行布局。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Image Upload</title><link href="https://stackpath.bootstrapcdn.com/bootstrap/5.3.0/css/bootstrap.min.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100 justify-content-center align-items-center bg-light"><div class="container"><div class="row mb-4"><div class="col text-center"><h1>Upload an Image</h1><form action="/" method="post" enctype="multipart/form-data"><input type="file" class="form-control form-control-lg mb-2" name="file" accept=".png,.jpg,.jpeg,.gif" required><button type="submit" class="btn btn-primary btn-lg">Upload</button></form></div></div><div class="row row-cols-1 row-cols-md-4 g-4">{% for image in images %}<div class="col"><div class="card h-100"><img src="{{ url_for('static', filename='upload/' + image) }}" class="card-img-top" alt="{{ image }}"><div class="card-body"><p class="card-text">{{ image }}</p></div></div></div>{% endfor %}</div></div><script src="https://code.jquery.com/jquery-3.6.0.min.js"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
</body>
</html>

初始化static/upload/files.json文件

确保static/upload/files.json文件存在并且为空列表:

[]

运行项目

确保你已经安装了所需的Python包:

pip install flask python-dotenv

然后运行Flask应用:

python app.py

打开浏览器访问http://127.0.0.1:5000/即可看到图片上传和浏览功能。

AI写代码,编程零门槛!用自然语言唤醒AI的创造力!点击查看更多AI提示词编程案例!

http://www.dtcms.com/wzjs/137799.html

相关文章:

  • 口碑营销例子上海seo网站优化软件
  • 济南做网站哪里便宜手机百度下载
  • 国内出色的网站建设公司百度推广代理商有哪些
  • 海门做网站公司人脉推广app
  • 网站建设公司演讲稿郑州网站推广效果
  • 阿里巴巴运营岗位seo推广费用需要多少
  • 网站建设免费域名全网整合营销推广
  • 网站开发看书广州seo排名外包
  • 北仑建网站价格浙江百度推广开户
  • 智能响应式网站建设南京百度seo排名
  • b2b交易型网站建设方案网络营销咨询公司
  • 网站改版流程怎样在百度上发布免费广告
  • 程序_做彩票源码网站开发seoul是什么意思
  • 外贸网站源码是什么写软文
  • POS机网站怎么做西部数码域名注册官网
  • 浙江网商银行厦门seo代理商
  • 西宁网站制作公司seo关键词排名优化联系方式
  • 音乐网站制作课程报告成人职业技能培训班
  • 运城网站推广哪家好最新的新闻 今天
  • 邮件更新wordpress唐山百度提升优化
  • 模板网站可以做seo吗深圳优化排名公司
  • 网站建设丶金手指下拉十五站长论坛
  • 网站图片展示形式韩国热搜榜
  • 网站建设策划方案品牌策略怎么写
  • 张掖高端网站建设公司宣传软文范例
  • 网站设计行业资讯武汉seo霸屏
  • 西安网站建设 美科动西安百度关键词推广
  • ubuntu 建网站宁波seo怎么做引流推广
  • 卡盟怎么做网站疫情放开最新消息今天
  • 个人备案域名可以做哪些网站吗关键词免费下载