def setUp(self): """该方法会首先执行,相当于做测试前的准备工作,一般初始化数据使用""" self.app = create_app() # 使用flask提供的测试客户端进行测试,flask自带测试客户端,直接模拟终端请求 self.client = self.app.test_client() # 开启测试模式 self.app.debug = True # # 对应修改成自己测试数据库 self.app.config["SQLALCHEMY_DATABASE_URI"] = DB_PATH # 先清空并创建表 self.app_context = self.app.app_context() self.app_context.push() # 清空表 db.drop_all() # 创建表 db.create_all()
def create_database(): db.create_all() return "创建数据库中的所有模型表成功"
from app import app from models.user import db with app.app_context(): db.create_all()
def create_databases(): db.create_all() return '创建数据库中的所有模型表成功'
def setUp(self): db.drop_all() db.create_all()
from flask import Flask, session, redirect, url_for, request, render_template, flash from models.user import db, User from os import makedirs, path app = Flask(__name__) app.config.update(dict(SQLALCHEMY_DATABASE_URI='sqlite:///./db/db.sqlite3')) app.config.update(dict(SQLALCHEMY_TRACK_MODIFICATIONS=False)) if not path.exists('./db'): makedirs('./db') db.init_app(app) db.create_all(app=app) user = User() @app.route('/') def index(): return render_template('index.html', name=session.get('username', '')) @app.route('/login', methods=['POST']) def login_action(): if user.login(request.form['username'], request.form['password']): session['username'] = request.form['username'] flash('Login successfull') return redirect(url_for('index')) flash('Login failed') return redirect(url_for('login'))