#1 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)##2 apps.py
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['UPLOADED_XINS_DEST'] = root_path app.config['UPLOADED_XINS_ALLOW'] = IMAGES xins = UploadSet('XINS') configure_uploads(app, xins) db = SQLAlchemy(app=app)##3 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))add_goods
add_goods.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>添加商品</title> <script src="../../static/web/tinymce/js/tinymce/tinymce.min.js"></script> <script src="../../static/web/js/tinymce_setup.js"></script> </head> <body> <form action="" method="post" enctype="multipart/form-data"> <!--上传图片注意点一--> 商品分类: <select name="cate_id"> {% for cate in g.cates %} <option value="{{ cate.id }}">{{ cate.name }}</option> {% endfor %} </select><br> 商品名称:<input type="text" name="name" value=""> <br> 商品图片:<input type="file" name="pic"> <br> <!--上传图片注意点二 type="file"--> 商品内容:<input type="text" name="content" id="rich_content"> <input type="submit" value="添加商品"> </form> </body> </html>goods_detail.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>商品详情页</title> </head> <body> 商品标题:{{ one_goods.name }}<br> 商品图片:<img src="../../static/upload/{{ one_goods.pic }}" /> <br> 商品内容:{{ one_goods.content | safe }} </body> </html>goods_list
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>商品列表</title> </head> <body> {% for goods in goodss %} {{ goods.id }}、<a href="{{ url_for('index.goods_detail', goods_id=goods.id) }}">{{ goods.name }}</a> <br> {% endfor %} </body> </html>index
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>首页</title> </head> <body> <form action=""> <!--搜索一般用get--> <input type="text" value="{{ kw }}" name="kw"> <input type="submit" value="搜索"> </form> {% for goods in goodss %} {{ goods.id }}、 <a href="{{ url_for('index.goods_detail', goods_id=goods.id) }}">{{ goods.name }}</a> <img width="60" src="../../static/upload/{{ goods.pic }}"> {% endfor %}<br> {# {% for goods in goodss.items %}#} {# {{ goods.id }}、#} {# <a href="{{ url_for('index.goods_detail', goods_id=goods.id) }}">{{ goods.name }}</a>#} {# <img width="60" src="../../static/upload/{{ goods.pic }}">#} {# {% endfor %}<br>#} {# <a href="{{ url_for('index.index', page=1) }}">1</a>#} {# <a href="{{ url_for('index.index', page=2) }}">2</a>#} {# {% for page in range(1, goodss.pages+1) %}#} {# <a href="{{ url_for('index.index', page=page) }}">{{ page }}</a>#} {# {% endfor %}#} {# <form action=""> <!--搜索一般用get-->#} {# <input type="text" value="" name="page">#} {# <input type="submit" value="跳转">#} {# </form>#} </body> </html>