flask 上传图片和修改图片和分页和搜索
- 创建modules 文件夹下创建web文件夹index.py
- 创建static文件夹下创建upload文件夹下创建web文件夹
- 创建templates文件夹下创建add_goods。html。。。。。。。
- 创建utils文件夹
- apps.py
- models.py
- setting.py
- start.py
models.py 创建表结构
models.py (表的结构)
from apps import *
# 商品分类表
class Cate(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(30))
# 商品表
class Goods(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(30))
pic = db.Column(db.String(100), default='default.jpg')
content = db.Column(db.Text)
cate_id = db.Column(db.Integer, db.ForeignKey(Cate.id))
setting.py 配置文件
DEBUG = True
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:@127.0.0.1:3306/exam1?charset=utf8'
# SQLALCHEMY_ECHO = True
SECRET_KEY = 'abc'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_COMMIT_ON_TEARDOWN = True
PER_PAGE_NUM=2
start.py 程序入口
from models import *
from modules.web.index import index_blue
app.register_blueprint(index_blue)
# 钩子函数,获取分类信息
@app.before_request
def g_cates_data():
cates = Cate.query.all()
g.cates = cates
if __name__ == '__main__':
# db.drop_all()
# db.create_all()
app.run(port=9996)
在表结构添加图片字段
默认图片default.jpg
pic = db.Column(db.String(100), default='default.jpg')
apps.py实力化app
from flask import Flask, Blueprint, render_template, request, flash, redirect, url_for, session, make_response, g, current_app, jsonify
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import and_
import sys, os
from flask_uploads import UploadSet, IMAGES, configure_uploads #插入图片需要导入的包
app = Flask(__name__)
app.config.from_object('setting')
#导入图片需要配置的东西
enter = getattr(sys.modules['__main__'], '__file__')
root_path = os.path.dirname(enter)+'/static/upload' #路径必须与图片储存路径一致
app.config