From 6569d29d7e4fc07a2cbc121b89af2d53804f4ff2 Mon Sep 17 00:00:00 2001 From: jianbo <263303411@qq.com> Date: Fri, 2 Aug 2019 18:24:04 +0800 Subject: [PATCH] =?UTF-8?q?python=E5=AD=A6=E4=B9=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/workspace.xml | 589 ++++++++---------- application.py | 1 + common/libs/Helper.py | 60 ++ common/libs/UploadService.py | 41 ++ common/libs/UrlManager.py | 8 +- common/libs/food/FoodService.py | 28 + common/models/Image.py | 12 + config/base_setting.py | 10 + web/controllers/food/Food.py | 138 +++- web/controllers/upload/Upload.py | 91 +++ web/static/js/common.js | 6 +- .../1ed32d7ec80f4fee91b56065ebc6687f.png | Bin 0 -> 6217 bytes .../23fa0d93ffea4a1fadd6c924bc54da39.png | Bin 0 -> 6217 bytes .../245bc835a2514d0e9c1aaa12a5c8672e.png | Bin 0 -> 6902 bytes .../57cf16593a3c4398a9503cb80c924da9.png | Bin 0 -> 6902 bytes .../6d6d7c6f3af7493f9af856d6c65dd3d9.png | Bin 0 -> 6348 bytes .../80c3611a2d5541998e97bc3d9e282b36.png | Bin 0 -> 6348 bytes .../8b6113a5bfd1486f9756d99d0f6612ab.png | Bin 0 -> 6902 bytes .../92081b8b866d47959666cc6306a3ab64.png | Bin 0 -> 6217 bytes .../9d86635022eb430da950f1069665186f.png | Bin 0 -> 6348 bytes .../a0704e7fdbf74dc3a98169a9602e22b8.png | Bin 0 -> 6902 bytes .../ced439416a7d49b6a694dd0c44cf04f4.png | Bin 0 -> 6348 bytes .../ea3743a978504fa0988fed9b2b3686a0.png | Bin 0 -> 6348 bytes .../f732e82251b141a798f6225718b65639.png | Bin 0 -> 6217 bytes web/static/upload/readme.md | 1 + web/templates/common/layout_main.html | 4 + web/templates/food/index.html | 68 +- web/templates/food/set.html | 55 +- www.py | 2 + 29 files changed, 736 insertions(+), 378 deletions(-) create mode 100644 common/libs/UploadService.py create mode 100644 common/libs/food/FoodService.py create mode 100644 common/models/Image.py create mode 100644 web/controllers/upload/Upload.py create mode 100644 web/static/upload/20190802/1ed32d7ec80f4fee91b56065ebc6687f.png create mode 100644 web/static/upload/20190802/23fa0d93ffea4a1fadd6c924bc54da39.png create mode 100644 web/static/upload/20190802/245bc835a2514d0e9c1aaa12a5c8672e.png create mode 100644 web/static/upload/20190802/57cf16593a3c4398a9503cb80c924da9.png create mode 100644 web/static/upload/20190802/6d6d7c6f3af7493f9af856d6c65dd3d9.png create mode 100644 web/static/upload/20190802/80c3611a2d5541998e97bc3d9e282b36.png create mode 100644 web/static/upload/20190802/8b6113a5bfd1486f9756d99d0f6612ab.png create mode 100644 web/static/upload/20190802/92081b8b866d47959666cc6306a3ab64.png create mode 100644 web/static/upload/20190802/9d86635022eb430da950f1069665186f.png create mode 100644 web/static/upload/20190802/a0704e7fdbf74dc3a98169a9602e22b8.png create mode 100644 web/static/upload/20190802/ced439416a7d49b6a694dd0c44cf04f4.png create mode 100644 web/static/upload/20190802/ea3743a978504fa0988fed9b2b3686a0.png create mode 100644 web/static/upload/20190802/f732e82251b141a798f6225718b65639.png create mode 100644 web/static/upload/readme.md diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 5e1f54f..8b63f33 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,20 +2,22 @@ - - - - - - - - - + + + + + + + + + - - + + + + \ No newline at end of file diff --git a/application.py b/application.py index 693396a..93717d4 100644 --- a/application.py +++ b/application.py @@ -23,4 +23,5 @@ manager = Manager( app ) from common.libs.UrlManager import UrlManager app.add_template_global(UrlManager.buildStaticUrl, 'buildStaticUrl') app.add_template_global(UrlManager.buildUrl, 'buildUrl') +app.add_template_global(UrlManager.buildImageUrl, 'buildImageUrl') diff --git a/common/libs/Helper.py b/common/libs/Helper.py index ef1a4ba..e70801d 100644 --- a/common/libs/Helper.py +++ b/common/libs/Helper.py @@ -65,3 +65,63 @@ def ops_render( template,context = {} ): def getCurrentDate( format = "%Y-%m-%d %H:%M:%S"): #return datetime.datetime.now().strftime( format ) return datetime.datetime.now() + +''' +获取格式化的时间 +''' +def getFormatDate( date = None ,format = "%Y-%m-%d %H:%M:%S" ): + if date is None: + date = datetime.datetime.now() + + return date.strftime( format ) + + +''' +根据某个字段获取一个dic出来 +''' +def getDictFilterField( db_model,select_filed,key_field,id_list ): + ret = {} + query = db_model.query + if id_list and len( id_list ) > 0: + query = query.filter( select_filed.in_( id_list ) ) + + list = query.all() + if not list: + return ret + for item in list: + if not hasattr( item,key_field ): + break + + ret[ getattr( item,key_field ) ] = item + return ret + + + +def selectFilterObj( obj,field ): + ret = [] + for item in obj: + if not hasattr(item, field ): + break + if getattr( item,field ) in ret: + continue + ret.append( getattr( item,field ) ) + return ret + + +def getDictFilterField( db_model,select_filed,key_field,id_list ): + ret = {} + query = db_model.query + if id_list and len( id_list ) > 0: + query = query.filter( select_filed.in_( id_list ) ) + + list = query.all() + if not list: + return ret + for item in list: + if not hasattr( item,key_field ): + break + if getattr( item,key_field ) not in ret: + ret[getattr(item, key_field)] = [] + + ret[ getattr( item,key_field ) ].append(item ) + return ret \ No newline at end of file diff --git a/common/libs/UploadService.py b/common/libs/UploadService.py new file mode 100644 index 0000000..1d13cb6 --- /dev/null +++ b/common/libs/UploadService.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +from werkzeug.utils import secure_filename +from application import app,db +from common.libs.Helper import getCurrentDate +import datetime +import os,stat,uuid +from common.models.Image import Image +class UploadService(): + @staticmethod + def uploadByFile( file ): + config_upload = app.config['UPLOAD'] + resp = { 'code':200,'msg':'操作成功~~','data':{} } + filename = secure_filename( file.filename ) + ext = filename.rsplit(".",1)[1] + if ext not in config_upload['ext']: + resp['code'] = -1 + resp['msg'] = "不允许的扩展类型文件" + return resp + + + root_path = app.root_path + config_upload['prefix_path'] + #不使用getCurrentDate创建目录,为了保证其他写的可以用,这里改掉,服务器上好像对时间不兼容 + file_dir = datetime.datetime.now().strftime("%Y%m%d") + save_dir = root_path + file_dir + if not os.path.exists( save_dir ): + os.mkdir( save_dir ) + os.chmod( save_dir,stat.S_IRWXU | stat.S_IRGRP | stat.S_IRWXO ) + + file_name = str( uuid.uuid4() ).replace("-","") + "." + ext + file.save( "{0}/{1}".format( save_dir,file_name ) ) + + model_image = Image() + model_image.file_key = file_dir + "/" + file_name + model_image.created_time = getCurrentDate() + db.session.add( model_image) + db.session.commit() + + resp['data'] = { + 'file_key': model_image.file_key + } + return resp \ No newline at end of file diff --git a/common/libs/UrlManager.py b/common/libs/UrlManager.py index b165778..dcebb41 100644 --- a/common/libs/UrlManager.py +++ b/common/libs/UrlManager.py @@ -14,4 +14,10 @@ class UrlManager(object): release_version = app.config.get('RELEASE_VERSION') ver = "%s" % (int(time.time())) if not release_version else release_version path = "/static" + path + "?ver=" + ver - return UrlManager.buildUrl( path ) \ No newline at end of file + return UrlManager.buildUrl( path ) + + @staticmethod + def buildImageUrl( path ): + app_config = app.config['APP'] + url = app_config['domain'] + app.config['UPLOAD']['prefix_url'] + path + return url \ No newline at end of file diff --git a/common/libs/food/FoodService.py b/common/libs/food/FoodService.py new file mode 100644 index 0000000..865ffa8 --- /dev/null +++ b/common/libs/food/FoodService.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +from application import app,db +from common.models.food.FoodStockChangeLog import FoodStockChangeLog +from common.models.food.Food import Food +from common.libs.Helper import getCurrentDate +class FoodService(): + + @staticmethod + def setStockChangeLog( food_id = 0,quantity = 0,note = '' ): + + if food_id < 1: + return False + + food_info = Food.query.filter_by( id = food_id ).first() + if not food_info: + return False + + model_stock_change = FoodStockChangeLog() + model_stock_change.food_id = food_id + model_stock_change.unit = quantity + model_stock_change.total_stock = food_info.stock + model_stock_change.note = note + model_stock_change.created_time = getCurrentDate() + db.session.add(model_stock_change) + db.session.commit() + return True + + diff --git a/common/models/Image.py b/common/models/Image.py new file mode 100644 index 0000000..0ba5cf9 --- /dev/null +++ b/common/models/Image.py @@ -0,0 +1,12 @@ +# coding: utf-8 +from sqlalchemy import Column, DateTime, Integer, String +from sqlalchemy.schema import FetchedValue + +from application import db + +class Image(db.Model): + __tablename__ = 'images' + + id = db.Column(db.Integer, primary_key=True) + file_key = db.Column(db.String(60), nullable=False, server_default=db.FetchedValue()) + created_time = db.Column(db.DateTime, nullable=False, server_default=db.FetchedValue()) diff --git a/config/base_setting.py b/config/base_setting.py index dcd9e76..57d711b 100644 --- a/config/base_setting.py +++ b/config/base_setting.py @@ -33,4 +33,14 @@ MINA_APP = { 'paykey':'xxxxxxxxxxxxxx换自己的', 'mch_id':'xxxxxxxxxxxx换自己的', 'callback_url':'/api/order/callback' +} + +UPLOAD = { + 'ext':[ 'jpg','gif','bmp','jpeg','png' ], + 'prefix_path':'/web/static/upload/', + 'prefix_url':'/static/upload/' +} + +APP = { + 'domain':'http://127.0.0.1:9000' } \ No newline at end of file diff --git a/web/controllers/food/Food.py b/web/controllers/food/Food.py index d00d64e..976f70d 100644 --- a/web/controllers/food/Food.py +++ b/web/controllers/food/Food.py @@ -1,24 +1,150 @@ # -*- coding: utf-8 -*- -from flask import Blueprint,request,jsonify +from flask import Blueprint,request,jsonify,redirect +from common.models.food.Food import Food from common.libs.Helper import ops_render from common.models.food.FoodCat import FoodCat from application import app,db -from common.libs.Helper import getCurrentDate - +from common.libs.Helper import getCurrentDate,iPagination,getDictFilterField +from common.libs.food.FoodService import FoodService +from common.libs.UrlManager import UrlManager +from decimal import Decimal +from sqlalchemy import or_ route_food = Blueprint( 'food_page',__name__ ) @route_food.route( "/index" ) def index(): - return ops_render( "food/index.html" ) + resp_data = {} + req = request.values + page = int(req['p']) if ('p' in req and req['p']) else 1 + query = Food.query + if 'mix_kw' in req: + rule = or_(Food.name.ilike("%{0}%".format(req['mix_kw'])), Food.tags.ilike("%{0}%".format(req['mix_kw']))) + query = query.filter( rule ) + + if 'status' in req and int( req['status'] ) > -1 : + query = query.filter( Food.status == int( req['status'] ) ) + + if 'cat_id' in req and int( req['cat_id'] ) > 0 : + query = query.filter( Food.cat_id == int( req['cat_id'] ) ) + + page_params = { + 'total':query.count(), + 'page_size': app.config['PAGE_SIZE'], + 'page':page, + 'display':app.config['PAGE_DISPLAY'], + 'url': request.full_path.replace("&p={}".format(page),"") + } + + pages = iPagination( page_params ) + offset = ( page - 1 ) * app.config['PAGE_SIZE'] + list = query.order_by( Food.id.desc() ).offset( offset ).limit( app.config['PAGE_SIZE'] ).all() + + cat_mapping = getDictFilterField( FoodCat,FoodCat.id,"id",[] ) + resp_data['list'] = list + resp_data['pages'] = pages + resp_data['search_con'] = req + resp_data['status_mapping'] = app.config['STATUS_MAPPING'] + resp_data['cat_mapping'] = cat_mapping + resp_data['current'] = 'index' + return ops_render( "food/index.html",resp_data ) + @route_food.route( "/info" ) def info(): return ops_render( "food/info.html" ) -@route_food.route( "/set" ) +@route_food.route( "/set" ,methods = [ 'GET','POST'] ) def set(): - return ops_render( "food/set.html" ) + if request.method == "GET": + resp_data = {} + req = request.args + id = int(req.get('id', 0)) + info = Food.query.filter_by(id=id).first() + if info and info.status != 1: + return redirect(UrlManager.buildUrl("/food/index")) + + cat_list = FoodCat.query.all() + resp_data['info'] = info + resp_data['cat_list'] = cat_list + resp_data['current'] = 'index' + return ops_render("food/set.html", resp_data) + + resp = {'code': 200, 'msg': '操作成功~~', 'data': {}} + req = request.values + id = int(req['id']) if 'id' in req and req['id'] else 0 + cat_id = int(req['cat_id']) if 'cat_id' in req else 0 + name = req['name'] if 'name' in req else '' + price = req['price'] if 'price' in req else '' + main_image = req['main_image'] if 'main_image' in req else '' + summary = req['summary'] if 'summary' in req else '' + stock = int(req['stock']) if 'stock' in req else '' + tags = req['tags'] if 'tags' in req else '' + + if cat_id < 1: + resp['code'] = -1 + resp['msg'] = "请选择分类~~" + return jsonify(resp) + + if name is None or len(name) < 1: + resp['code'] = -1 + resp['msg'] = "请输入符合规范的名称~~" + return jsonify(resp) + + if not price or len( price ) < 1: + resp['code'] = -1 + resp['msg'] = "请输入符合规范的售卖价格~~" + return jsonify(resp) + + price = Decimal(price).quantize(Decimal('0.00')) + if price <= 0: + resp['code'] = -1 + resp['msg'] = "请输入符合规范的售卖价格~~" + return jsonify(resp) + + if main_image is None or len(main_image) < 3: + resp['code'] = -1 + resp['msg'] = "请上传封面图~~" + return jsonify(resp) + + if summary is None or len(summary) < 3: + resp['code'] = -1 + resp['msg'] = "请输入图书描述,并不能少于10个字符~~" + return jsonify(resp) + + if stock < 1: + resp['code'] = -1 + resp['msg'] = "请输入符合规范的库存量~~" + return jsonify(resp) + + if tags is None or len(tags) < 1: + resp['code'] = -1 + resp['msg'] = "请输入标签,便于搜索~~" + return jsonify(resp) + food_info = Food.query.filter_by(id=id).first() + before_stock = 0 + if food_info: + model_food = food_info + before_stock = model_food.stock + else: + model_food = Food() + model_food.status = 1 + model_food.created_time = getCurrentDate() + + model_food.cat_id = cat_id + model_food.name = name + model_food.price = price + model_food.main_image = main_image + model_food.summary = summary + model_food.stock = stock + model_food.tags = tags + model_food.updated_time = getCurrentDate() + + db.session.add(model_food) + ret = db.session.commit() + + FoodService.setStockChangeLog(model_food.id, int(stock) - int(before_stock), "后台修改") + return jsonify(resp) @route_food.route( "/cat" ) diff --git a/web/controllers/upload/Upload.py b/web/controllers/upload/Upload.py new file mode 100644 index 0000000..c829766 --- /dev/null +++ b/web/controllers/upload/Upload.py @@ -0,0 +1,91 @@ +# -*- coding: utf-8 -*- +from flask import Blueprint,request,jsonify +from application import app +import re,json +from common.libs.UploadService import UploadService +from common.libs.UrlManager import UrlManager +from common.models.Image import Image +route_upload = Blueprint('upload_page', __name__) + +''' +参考文章:https://segmentfault.com/a/1190000002429055 +''' + +@route_upload.route("/ueditor",methods = [ "GET","POST" ]) +def ueditor(): + + req = request.values + action = req['action'] if 'action' in req else '' + + if action == "config": + root_path = app.root_path + config_path = "{0}/web/static/plugins/ueditor/upload_config.json".format( root_path ) + with open( config_path,encoding="utf-8" ) as fp: + try: + config_data = json.loads( re.sub( r'\/\*.*\*/' ,'',fp.read() ) ) + except: + config_data = {} + return jsonify( config_data ) + + if action == "uploadimage": + return uploadImage() + + if action == "listimage": + return listImage() + + return "upload" + +@route_upload.route("/pic",methods = [ "GET","POST" ]) +def uploadPic(): + file_target = request.files + upfile = file_target['pic'] if 'pic' in file_target else None + callback_target = 'window.parent.upload' + if upfile is None: + return "".format( callback_target,"上传失败" ) + + ret = UploadService.uploadByFile(upfile) + if ret['code'] != 200: + return "".format(callback_target, "上传失败:" + ret['msg']) + + return "".format(callback_target,ret['data']['file_key'] ) + +def uploadImage(): + resp = { 'state':'SUCCESS','url':'','title':'','original':'' } + file_target = request.files + upfile = file_target['upfile'] if 'upfile' in file_target else None + if upfile is None: + resp['state'] = "上传失败" + return jsonify(resp) + + ret = UploadService.uploadByFile( upfile ) + if ret['code'] != 200: + resp['state'] = "上传失败:" + ret['msg'] + return jsonify(resp) + + resp['url'] = UrlManager.buildImageUrl( ret['data']['file_key'] ) + return jsonify( resp ) + +def listImage(): + resp = { 'state':'SUCCESS','list':[],'start':0 ,'total':0 } + + req = request.values + + start = int( req['start']) if 'start' in req else 0 + page_size = int( req['size']) if 'size' in req else 20 + + query = Image.query + if start > 0: + query = query.filter( Image.id < start ) + + list = query.order_by( Image.id.desc() ).limit( page_size ).all() + images = [] + + if list: + for item in list: + images.append( { 'url': UrlManager.buildImageUrl( item.file_key ) } ) + start = item.id + resp['list'] = images + resp['start'] = start + resp['total'] = len( images ) + return jsonify( resp ) + diff --git a/web/static/js/common.js b/web/static/js/common.js index 7030ffc..0e7fd9d 100644 --- a/web/static/js/common.js +++ b/web/static/js/common.js @@ -150,7 +150,11 @@ var common_ops = { } return url + _paramUrl; }, - + buildPicUrl:function( img_key ){ + var domain = $(".hidden_layout_wrap input[name=domain]").val(); + var prefix_url = $(".hidden_layout_wrap input[name=prefix_url]").val(); + return domain + prefix_url + img_key; + } }; $(document).ready( function() { diff --git a/web/static/upload/20190802/1ed32d7ec80f4fee91b56065ebc6687f.png b/web/static/upload/20190802/1ed32d7ec80f4fee91b56065ebc6687f.png new file mode 100644 index 0000000000000000000000000000000000000000..9af49019255b68989d5ca4246eda43ba4aed3738 GIT binary patch literal 6217 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/57cf16593a3c4398a9503cb80c924da9.png b/web/static/upload/20190802/57cf16593a3c4398a9503cb80c924da9.png new file mode 100644 index 0000000000000000000000000000000000000000..237012df24077534a132da9b60b2fb528d0a41df GIT binary patch literal 6902 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/6d6d7c6f3af7493f9af856d6c65dd3d9.png b/web/static/upload/20190802/6d6d7c6f3af7493f9af856d6c65dd3d9.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a78e7f7f1ad0f16193b7308a2980dac0d2927 GIT binary patch literal 6348 zcmZvhWmFVQ+s7A4X>e%?K~nOj1fcBgArMsk-Mx;SNq(fR@>0VMoVA%zhTw>|& zR+e~u&UrsP_j5dR{xctD&NbJ6KFqo1H_=)eN+g8zga815MEQ+^_MZ{?9}ztG)7M}g zQUL(8Das1+y1v;5Ip8>uLEz7>F3+Q!nZx}mpPA?x@BOD5kN34saa8QN2NSryd}Wd2 z3f0fQ!@|`IljX6C;nAbIE!2K%|5m=33St+k&%#uUm8qUDXGh;H^10I? z8Clr+eUXSsmxAtHSp6exD}9EsYmlff@1rI={iq8H59jiu%dq|W(W=TYeSZ}oxE zjgN>~>i(^_`gY|1fOg_sR3AULl`YrVs;6#hqZr&i5IGPTBgSC^hy7wIORv-_e{e+e1F z{}VHGiNN3A_q@(~;S3)87sEB7 zob#hE%#RLfCPo*mn-90=5aLS^l}$uKDdU_3(O>f|=SMrFwk=xj*?yfzVf3NkO5eI4 z)QW#xFW0rp%QbK7ryKZwi~9fF#`HD3r91X=+eGm%J&p+1Jol#!&-pp$Gn9CzU1B|2 z@8_KmT2P=+eSLi(dTpgQavtRrk}95F2VKWCW@~(9-vXUE@eU>RKT>IU&yag{S46mEN{aFY7Ljt?+S#zCV71_wA`;FGmyulK|NNCX+|~ zxfK?G8ua@58)_iUfhlO!1yGNXm6ei`(jA^>;hcvOI~_IIN2+=91;ekqDwQGCO=5KI zy0JH5qJGX(Oq?d%pCT%VIGKB+U*ktkzG%A5Qxb4Cl|36wPH{#ycoJ_aI1TAIICG4O z+c_NHc+kc_pAe6m*8%D`3upxTez@^ztxR_Ixc?zg=Eo%l4)k$R69U%3t{~qpR3M;& z)~_7G6Kx#A2!RNPg6DpLdd_QQBIxwrDZA&Pr-Ne8#W)#-goSC9nUjg>lP(ZhB4pA* zG@oAky?P=Ah-B)L5;7%bC4VFwC9h_V5Pvvi$G>E?N%ZVV{PRbc*Mf)|p!eQXDqB1KQ7X6a-tZzX3AB}~Y3?5fn+5i;$WjKJ9_30*G=PC|I2-lJm z=@!=>q2JV0JV6SkLWGoc;8(@eEZ-Y64TaK(9nQY~W3;#fW94z@!~F*PkCg9KfJYrW zQm$ihiLPA4=w%pbYt3UMmoiayIs>GK{_RJWm*gB|0wH@A_M(}yQV!}Nz*iFKohg=$ zFDbxp$$2UF8I)l7uuCrr=pk`6CTpyf(4}ETLtxtK*eKCf4#g6J90d=1IUbb2m3y1~ zs&mpQ6y6NzfBE1gB$1-@&e^WQ&cK^`)+R&?op>sGtYNXCv<~M!0`g4v@f8*kRQhd! zg--VNMV;<}4w*?f2cHw^ohCthI%YWaKBGJOx)y*n@4e`?26+YfFN&+_DJ!(tIB<8Z z_?~4EEgEn&y-R)t6edD>uUyy?n{ZE8eS-r?c_8;yrJ3`c9-#e3R=1+I0*m}@r9g?V zRja$OOcl)a_B4U^SVN47vp*(=QdUggnEDw<5nD%#vO+nXa*3do4ZntjRsvB!-~D=kc-<%Qkd2YhwCJJbQ>OD}vLif@H-J?3BG*f|i+VVS z<0M%mB<&7K%_FYQBdlnv#?H^DZ6JO^kQp6WG?Z&}ErWa3LcWQlgqwgWGkoc~zm=jV z;Acz8#EP6mAp{8|s%(=*^3?XYT&ZyfjmxWZU*l1$m@q2E_^D{Jet`*pKXa?bEA zYygJB@%7LX%O6GIp7OEnMq=pvjM(qQ&tE-(&c<Q28@%P`=u!qpe`Xk$^)h!8c?Js{K94@1^c-Y{g!1!5|)}%n`y@qusW_PA;tTBHOkKJlA+Il%=%dw(Fq<@=5ND=7N>> zuj&LGY1)!LzD_fds^+DRg~5D+*UXl#F6Wt7-5IuSW*rfJ!}eAZzZF(DSy;XXdkq~~ zo$0tl2HEt^2>*Hy<<%Hb)}rQ7mH`;5KV)x$5&4OB_w`VCd@d2u)&Y`(3NnB2xW{X8 z{tCeZ2v|vb0GTr0FIb`qNN};b9aJ6pESk zW#6VNMMcPh#HD~aPQ>n+1$LyRT(StufmH{QAZNY!ex9d-??f9QiFwa&JC3AvE2eS-FHzvb*3x(73KSJW6(TS9tH;MT*`&Mc+I**tQ=TN5 zQ1jU1Y1CBp*|$=otV>1Ko;C?Q*u_bV5+$79j+qw>lq$yzet#(e=%)A~33*{6bFU@( zLZ1tm_*mi}F)=Yw(c877fYliny`qQs&(7mwi)-i#3_W%E$gvezp;)0vHJs1PiW{I9 zuGO}R(n~!pJnUn+iavUlAGyuuR}9|;5h(EUIAN$&n%}%??Lo2YQse21KNozdqxh1? zUhmTH^}VX!)FPohxDk7>=Z}_)l(I>-lC{GFgqaS<-4x>R&Ac5!gimW%OUNjQ@;6`W z_wcCAY0-Zupce{30!f3&-;0xbaZr-$RA%&HtRAGo3YqW5<~K+4h;nZh5|FQIyxJK7 z+I_;fYO^o4EVzpZl8d+94pxJzXeJR`PN!A8C9p5d!`3Hc0P|0Kd&s7L2wBovGypwS z%hp#~*5W^-8yX62I1<)6z6T`R6qRz69-op~-dVi3S3Isi;o{3EdCLJZ81NYED&s7C zUGh{jTYY9Wf4<}V;pJIEb8<>xPlI;@0Qn1_{Nv--T>6A8`LC5HFF#!s)JZM2DAs<# z^zUU&RQIj(J;wy{21SNHQZRk|0ZUlmBYZ@GI!>O_$f_-B8!w?J&7=qmPCSgf$ow`D z^I_V&n+Tw--@{5av|h7gFn0co(gN_kt?@VUS3ZcV~8LtfMT{TS(lc=kkI`XZOE3RwLJGKffm59Ww$vxYGPl(C@-vG zC|XtCy&sIj6H-`&3efYkU}%5u#@yqch``S#BZ*ZN>gI|FVcA zMd|K(d@1=}7v3wmPne$ay=w5(0K$(O+AbV$2;(yQx#9S>C0RE~evBVHYH>F&a>bH& zJU*tDp^N3tjh7{65~GknZ}kYeb$lGT9JjK;>?&l=&;lexKd!zZ=VW7o4=)v=z=MF% zThPgO##`df##rTm(3UW(z!S<)QQ=pL<|NwYf_l}sO7^L8tkEqG0X?|czb1ZaX8*1b zaK`+e=m(=4Yu@w5Oo1(Xes5z#Nj0XI+|BPUpY298)J60xN$W{3xuJs=Um696Ob3U4 z6Z}9+iE`K9$imS=o|w$JQiif^Mj3`$RzDbFGYFk12=)4vhY%#TKdcV+-d|9R17=njtkY$SamLi0A@C)CBriAnv;46x(! z>7`$|094l|8=#_zXeT@nd60S9!Y~Yx0UW(eyZdE zPv%YQjcV$K=+4ixAIZjx1i5#%drbNrFcdf>T?q!CBqEj#2LdE#-@CK{-2v8Iy5cwy zntxOG<=R1P4*==}T-@Lo=_Q5l_Bvqy6|`nxpk;AYlwE+rl7CLx zJFQPP*=BXCjD2s@T0Jj2$PAKyRNxl0%nDS5Zh6uCsla+{kFAy74DTa(EQdMN%Dhw> zoF5S!#^in3#FfMG-TDmwroo{}9=a@jH8RxCd{YUO%AYwR+9ZiWFG5O;_bAOyO&mcnQQSy)j9Kg(igtf; z+$3vb1#`3URiXVGlFhRIVnEr+WO!mKeXcg4d2U8rogG6sRgEJ!o!|UtZB=7Q;_bws zLDlin1<&oX33+al!>YhER;i63G+mR=#Xz`hQ}1j32-dRc@+QkrkhoEftJ*#-E<`VgoBF;E3FaI9A zc^*m}B7Zu(P$fZfY zuDTxhQ@gd4sZw0kxfgD0^*mwR*${5@vXJ6|2YOnc+&IAF8#EeWHN!mO57*ZHq+%=k zg8Aofz^))04#>sn>FMzBKiy3cvH|LAQ{W%Tz3liq;W4CXgoDy8x;*C>Frl7hn9Hj) z)^WzS*?95Ibj-C;gC-|mw-`=TwDi}`2crdAtAZ`u8%=#gg=zIyVi;58cZrvGbP%iM z!yrOH-+2XQv3a3MuuJf$jl{<3+1bw}T})1z-`6nhBH$`MH&=nLP1S>_cNE;Bzcl)n zVf-BNv;ET64i!ixwI2Pc7~HYp3?t`pTsei}`Xzz9YYt(D53Vaec28B{g&pGilSX?j z43O4c{KV9rID-AquOY%ko7-fj2Z764UQ_SR53?N2{I*W_sxPBkTYVL?j|W8~rB%nF znB{X}gY>OrLqd(LLhFslxephs->Gbv7WFv_l2Xjr4yJsThKNTK1LDwap2&(E7o4Im z54P*g;!U9@dV0t#P8V15&b8}nsb+7YQPG?V#>fIo)iXKKu5#7t>BLX79)?2FZHFD$iljV&lS!y@O5{! zpGtsA?Od0n#p;_KxKkAzl0OrQISr)xK=9nm=>kw#&aFT=$M|}>2{$*n{-`)Yx_)~) zfMcWbg~Z8roS_~d3J1K<`#b2b>G7xM^CD#w?^_YIQg!@% zLL-JTJ&E)E1~hL#gr;lS>y8V^Z3t^-rIBJJwd1!X0tB-eZvu7sM5-ljas9oX{c~wBm;n4(<597PQ z{dP}}e#yJ1(nc{=ToJ(CopM~LqM{>`Qu~+4a>J4KQwyuU4_!5UqI&FIKPpHT-3s$5 z@GjhbgK~gWMAMhtoTm-NWk!?L*(X7Mob%L#3H0ujr)7{;B;{ORzeG$=RBWap$#AvZGNygO|+?5?OfB9F#A;WaU8Mxm@Qa)!%sZO*b1y?@CZ`KLx4l}m zwDSX<8;VgTz}MSb%q-&z^Ne-<;A&SyX{&&fsr!bQDw#numVaNP7s})kG0*F1ud#*%QhcRn5qrD3lZI4o^gF8b5JLhx14T}ysS|>b zK=s~S($i|~Lka9FvYu|z-p?uVKb12WpI8xDbGD96rafKM@*h8CW|)Fe&*+}Ittr>< z46v)SAKWgLb-+xzs;!W#Z8jEWkn_`x)dQFx9D<_VNg}@a6Nv?yJ`y9yR&i=BlJ~h6 z(fNsy z^OZC9`;!>cx;ldyr^om7c+6rpTvjymiKvt-QInX*a0)86fTn%WM3jzI&qV67Z-z0P z5*yU~oRxGi_oSd6w_Ks;q%N>{bf=V}n?yDK)7^VLyE>oN=>|>Q%V42li_G3Z*O6si z&tCIg!KZbv{3VX^paQZw&k{gZ@L5y?2R2}&rrQ3aC%doxCJ=y4zp_&h7(tWEZ#01g z9?m2z%RivY^S~DEaCj?WnO8|SirSL|n_$ZEDxYqspcrARy(|l|;tHAA9zHDoN#}iLu zN%UcTbtSj#3q6l2mokSh?6w_BN{}5E-zwc%1D!$&!1TJTq*1$H#Qvmj3B#zVisx_F zeB)H~!59>D12BTB^S`n=v(ZH350_kH0|+juI!(Q93JX!#)RXUM6AxDTF6x}kHnbJf zT#Uv=Vd#zT(d5(^P5lrn_OXwrp~^SfvZ%8(2v;7v2Dl= zB3<@ROLVa{+uPCK)b*(QA@}5e!0mrHCS=53>JQ~vMK4m7<&5rZNk?DPbsjGI{SEZi z$gk+g)@O9UkeMc~e$vKpY!gjcqPD-m-tD~?DDUm*8#v-L>o!|@F2i+Rv#XO)QtIz? z)F|%9e&wi3M@3%7Fye9w+U|Tb&40L0(Ek@Uz3pb$57}J0I5RC-dP^fxo9`=8OxizT( literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/80c3611a2d5541998e97bc3d9e282b36.png b/web/static/upload/20190802/80c3611a2d5541998e97bc3d9e282b36.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a78e7f7f1ad0f16193b7308a2980dac0d2927 GIT binary patch literal 6348 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/8b6113a5bfd1486f9756d99d0f6612ab.png b/web/static/upload/20190802/8b6113a5bfd1486f9756d99d0f6612ab.png new file mode 100644 index 0000000000000000000000000000000000000000..237012df24077534a132da9b60b2fb528d0a41df GIT binary patch literal 6902 zcmZ{pcQBk^+s9Y$EfPI?Np#V>h#EDGh%T$QMWVB-hUf%gv4oK57OS@qOZ0B_vWT#V zn#J;ZW}fGn-}_G9GjpGN=AP?1*Z17#n)Ao!8*6N+O-0T^4gdhCbagbI-n_^E^^oG< z%+(iUcK`sEHeHQ}&;4^SxdA!Pzt@1&ig+?$M}a9wIRqyxvZvE9d8a8u^3m4jbh~9T0KBj_ z-%yfO~u$y3ic7e6jvKSD~JhE=)be?Bg!0F`E0aFFDyg)P3H3U`aA0HCG+~ z)n%#PmPID^0u*ri6&X|>+W~uyN$ZgMiy5|A2z#=LTN(HDpM8vWe}!;X(4CjkkaH#*xMc$DLiE9-+$qdy z$+)@k)gTA5cmU4u;o#3*VI6trkh5P+_q%e^axZ?I>6^pnm+Vj(_GI(?lbs|i_>XRr zhKH%qlE!m6-jgGbmU+~bHI!BTvHGL<*rq;6ONKF<&n?c4%kAN}Vy9SC3OhdSEKs%% z)3&ngg9qV)J`dQnEcEo=6PW4AG>7{vc?}Fon>#1a$~+ou(4&Zl=S%l_ZuyLp;Yo2) zK_D?P$uZmmYGYA98#u#1?)UKn0QmThVKI~gZhJ~~g#k0gICB;GYM-IJdPbQ+#r2=h zJeg#wDl0`xKKL;i$%GuG{lHl6I8|N^GR_q+6A~+sWFiuUsHw(Akq|EK?mk9NfImYH zeg07tU?s$XG)0>Urw35u1+d{1n5#(3J~R&*hpbPV%8FjuoM{)kQxA)U97et?@PlsQ z+P33V9O0W>rscVXO$LrC%L#WEPSa%!nPz3?-UYC%v&laiPWI|$dcg3+iV38-CCW}* zbzt#YKu5#vGp+h8FCi*CW@oPF{qI7O1dDc`6Gde_X16OFlK%K%GqdO$<<`x5=}<46?1sAFaWd?|3c&x&ttn?WL-VC6-teV zPY_L+%O;cB!Oh)W?cRNGz0&U{;f7+vHDy(#l{Hi3jpx^*ISDlwa#DHh@-|^X-##aa z;hsIyKH^c#Yu*0hy5@O>Dq$aiH@cq=3`@M_fR?3jEx(wW8l+XE{l+KXON+NIIo*d3 zIigy!SL+P64%K|vWPQ{SJ;$QR(lX?MTzP_4oms<^3#g#2=@q+V)Omfm;3Yj$5n#KW zc;>0_E89ZcA0?&;m-qNj^allTk{Bz_wmVu;Rta?dXMRJu zlrm*>_WSlx`~&)qxiQP6oZZ~-Kqg8vIY}Z0EBxI8C4ebpHCWo^h!*+6uu_m^e00v( z>SbQlmLxE$J-q)8z3lEh(=<~fSP3hv@qr-&_!5L4S!=7lF>7$q;N~$meird~S*fYN z9&BhxCU1*T&*)Ob_pMC?+DxW$`SdWBNf9FF!Y*LuUTdUpu$AcpzOCATM{%X1P;WAA zYCyERZwq^3Pi^r)6a){%Gh!NZM1f}X{$}}9@bNoDQVKh1YJtqHJ?4OEwk&uqTQ@QnFy&eo85HJeS_sL55b0T0QGL|hg2J7c=?XboTJc_rODtcQUBWg1y{-z0F&0 zWPa)~*AM^>N^^!*BDcR1@aKQIZ1>h5VuddAega9Rf)Xre>n)9aph*`w$`rUL>(cD- z7{eDi)<-aD2NPoo3k1mO(aut1Sr0FrgwX)2$x~@Wu)Z-3cfO{>9LIaNTd9`(Jc0L- z;%){J#(o#2B0_#_3uLrow17tHhNTJ1*x#9!|?B*%ueMohG27;C{92>2HVPV3~*d_l$g$cRBx_<|yC~lR-gG-DTX5 zYWIX#`-o6v-PJ9F9x-x>YJ`!ntc6gUi!Tp(Dis2#@f8xk4xb1mUT^A|s(=@gbrZkt zh%0!S*R5T)=fLIaI>SSf-#d2rTVojfu)N=KH;s| zqa@s~$)AM#Qrgq;V%ZF9{Ib0W(ic0hoMURK(r3|2IA`$`fuS(d zLSM3<8#*Z7+&taY%t`J;j{!P#5i@0a5(Rdx^hzzYn1CqlzUi-|_7%T5%i9&-*KK*CncoG}@Z(3%K z-}lxH6kF|1vno<(0Lk=TXFoGN{Iw~oZbAxSI%F-elnojOb4BhLE5s)@jSO9Hoogb} zuC)qOQb{4ZlDk&tcFX-k^dBrlv`;fJ!V?I6I_l9!yg-(#J=>SxbcgH9jPioEKTzOx zrqI!$zJ)qW)#@SIcKBhII3)m9YT3`Q=`e4Oh%&3z=b84zLdWoR$6K-4Z|`-K4zck- zDfOI1Aei6vRZotvjEm0Nvg_m(wrT%-qO#3(8l$r3Q|kcT)y}v)T;)ruXbg?5-Nac6 z$;f!HTgvuS zP+8ZbMn<)bsEwrHlP*tvIhf?0LwWd58lk-Q9qY5HM3vf7f1N*d-$HGNt&Nm_6{&-{ z0CM~X>%}6O!mW1h-3m!FYpH6t!hCoO$`@0ToXNHBK_CG`IwSTPITxRWLZ1em<%d6w z#~7c@Aw3t)f93KsGjhm6C8+@zt)RR;n9ADm!EX(XrpRn-)0QZoWU*=+a1- zN}412G|P>_#w?tU_UZD*EZN37hx}QWI{0DIi8-`kvHB+o#^eHG({GB*qXK9g2Zk&v z!i1H*e*TWRrz7Png|nT4alAStrBn9m5-Tw=v|6k_t!(B1&rOdu(2PxdR$E~qxS+V+ z3^h`R>n%6-Ff;khAR+<0pwb=geB=TrpmVYSdFRhz;XGaJmwEEV!}HvEa}~VEBY_-K zv=}elU{BAhNFDvsoHt`VC~P3ed!wk3__=lUK`O%7 zT-|p#jBD#%mF$&8I^ZkI(EX5_KWx>$G7?);r`5hSVhsbo@P9JrpJRS3w^>}XaBgRN z4u9~J7n<3-_=&lzH>d7CBXVx_T#6K8^F+!sSLHJPC`oxgOPWFz+4f*mO3U}u5iV~W zW=A%_5Q)#Ep@POzip=ipTe&h=MdE*4@o=m!oX=sdYrH6&&Yg>%&BSVXs#?YMt_hD6C!dCCYjR^eD9*y{PBdk8d zAp`8BC}M!KKFmxR*TsBhAP6M|#LO;CDeb3Y;}GqFeTi7V#hr8>U9Ie1V|3B(xa^VM z`5f;VUD}=SoN4`Eyu0He)FLjrk!Np3Kq z4vZIO4nX!dSjnA+=Wo_|;CIU~wECRs&0F#F8Xe3~=^dwQL}w3IkNmQ0Vs|QC>p*#8 zzTG8A8GUBC`=&4^?zwRiFZVFa`y@I1G2o@24GyEnaCvmu;rgXM@)hA+Au)T~&v0;} zATwUdEiO8dxziudSo4Ur^5~!LVuK901(Y2tED@`3sDJ>aX3@jxMVSnV=@ElO7V*Ph z{YSK8x2Bc%7iV1R74Cwwo1t!Xj5&eGpLjf7&oJZmZ*luSV9Y@ODk3l6`UYO_(GW__ z-7b_4b>DD}Ks*GAoGo-+`wW5j!4A9atm)|5=BtmVa;rkzdjeQoH0nBBJ8VwPx?Q=( zHNMOL7{Q(8ofn>+wqHA6l+3?E%rv;6mYbGoqt60EB84Fl#a_Jj7&tL;Tl-LV`Z1lY z)>IvZRxS+y<8YxYv`6v8>E)O)K&>Z%L{@?-E;yrw3wsmJaYLEF%G0hL5T=_S>nPtUd za;u4Fry^ig%mOE5dx`e{yaQl{&0|D|_9jM$c;06u^e`wdt0q&6^Pt)vNwrB+|taz?|PR zBcb;86F=VDY#je^CJ5$Rn$C_2w8d0sJExai`*x@KRsOMUSfr|vrL{umZ^zRoWiB%A z3d}ESDGi6ZmTbqng|X@KBu&u1#)_{QZn_e6AHK`jOka9{b%+)Qz6-6sM1=HOO#<+= zZYQYq7?!!3&WMhZ0`$cx#hF%z);(DiS3aWR#4hVxLT{aj_qYq&4Vm033L1g7t9{Hwlbb95ID2U)bE}FYps1lRcGEtv&GPPaT~4@ z$ueWn*h2>zSO}&OD?q8h4)`^X5Pn(Pi66&ASI9;5DEw7&j10o<*X`V4uFloE!)IWh zA64Xa;ihM;E|Aq-{T$)yCHGf>+hEZa7nJn;ysB4rIQJ(QcK_q0YJBZMULFl-^3Bw3 zPN4&A)5yqJY`r3JbWpn)kS~HF8rpX8n}1#C7z z=$C%CU0W~GFYRsYfS5in;cq*!%^EY^=Ik<@A8f*+AQ^Wpnu9mIp}VugZppCBts`fm z$y(MYrztr57NNl%f`C^k?7N?z1U05_khqr>cPL^I2@Nu@5^CJVyIYiJ4$3td{PC}c zzYSbiSp}~Qu`8ZUf1EU!bHbxnMr7Q%v#~wr?Ajr66ks1IoS7@R6kw$$bi!Ec)IfZE zuhUHT?xzsft!Yq4?}15tFo3Dt#qwmlJ(F|1x1V{oZEO~NopGTr9=OY9*4c-;rQ@yC z{HA)MPOjyh^E-<^ARedcide*&-49i#hVLF&Hsvp5J!i5@ay6i}z7-wE1cOt8dG?pf zHPn9`*`PY`dt%~&Afk0M4^p;NwidY?>gS131j?79KPK6(-+NLI51L?PwgDzJZIzxJ zF&G9S9#o~qSb10+w)%S(lADYk?3)sB#j6grR){wznTTbv^D$ESld#W38e*~MU+aszy} zn_llcWNrotGhP`f3xASKK&05Gf;!3YV{37Ca0abF)UKF`=m{2nJMkkYg^3n$1K)SwYdGr7x6%nIgu?kGDT+Th^WCQ#V!Zrt z=eD(kSMTgNm%<-pM}P!6`fCJR%3TesEtL6ICb6C#K~xEefWfrZMy*;AIZrpoyHzu4S_&cK7em`1JcN*| zWuA?9(<9X*eJ@BuOUH!I>BT#&^JtAyidcrA>!ElZGih`p@};HX!t zs1sAANyTDSE+h?7nM5J{MB**zUe8sk}38$-*iY&6@20Mv2RLp`-VCz?>N`kcKm#m|1#RFKTl9?7z0ee*{p| jr@gp0p77U-m#RC9_vwMx4+(DkEP$@2p+=>;P5A!+U^aq= literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/92081b8b866d47959666cc6306a3ab64.png b/web/static/upload/20190802/92081b8b866d47959666cc6306a3ab64.png new file mode 100644 index 0000000000000000000000000000000000000000..9af49019255b68989d5ca4246eda43ba4aed3738 GIT binary patch literal 6217 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/a0704e7fdbf74dc3a98169a9602e22b8.png b/web/static/upload/20190802/a0704e7fdbf74dc3a98169a9602e22b8.png new file mode 100644 index 0000000000000000000000000000000000000000..237012df24077534a132da9b60b2fb528d0a41df GIT binary patch literal 6902 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/ced439416a7d49b6a694dd0c44cf04f4.png b/web/static/upload/20190802/ced439416a7d49b6a694dd0c44cf04f4.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a78e7f7f1ad0f16193b7308a2980dac0d2927 GIT binary patch literal 6348 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/ea3743a978504fa0988fed9b2b3686a0.png b/web/static/upload/20190802/ea3743a978504fa0988fed9b2b3686a0.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a78e7f7f1ad0f16193b7308a2980dac0d2927 GIT binary patch literal 6348 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 literal 0 HcmV?d00001 diff --git a/web/static/upload/20190802/f732e82251b141a798f6225718b65639.png b/web/static/upload/20190802/f732e82251b141a798f6225718b65639.png new file mode 100644 index 0000000000000000000000000000000000000000..9af49019255b68989d5ca4246eda43ba4aed3738 GIT binary patch literal 6217 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 + diff --git a/web/templates/food/index.html b/web/templates/food/index.html index b5d9b8d..c6b6399 100644 --- a/web/templates/food/index.html +++ b/web/templates/food/index.html @@ -1,19 +1,6 @@ {% extends "common/layout_main.html" %} {% block content %} -
-
-
- -
-
-
+{% include "common/tab_food.html" %}
+ {% if info and info.main_image %} + + + + + {% endif %}
@@ -58,32 +53,50 @@
- +
- +
- +
- +
+ {% endblock %} +{% block css %} + + +{% endblock %} +{% block js %} + + + + + + + + + + + +{% endblock %} \ No newline at end of file diff --git a/www.py b/www.py index 24270ec..60f50f2 100644 --- a/www.py +++ b/www.py @@ -20,6 +20,7 @@ from web.controllers.food.Food import route_food from web.controllers.member.Member import route_member from web.controllers.stat.Stat import route_stat from web.controllers.api import route_api +from web.controllers.upload.Upload import route_upload app.register_blueprint( route_index,url_prefix = "/" ) app.register_blueprint( route_user,url_prefix = "/user" ) app.register_blueprint( route_static,url_prefix = "/static" ) @@ -29,3 +30,4 @@ app.register_blueprint(route_member,url_prefix="/member") app.register_blueprint(route_food,url_prefix="/food") app.register_blueprint(route_stat,url_prefix="/stat") app.register_blueprint( route_api,url_prefix = "/api" ) +app.register_blueprint( route_upload,url_prefix = "/upload" )