相关疑难解决方法(0)

连接到Flask中的数据库,哪种方法更好?

方法一:使用来自http://flask.pocoo.org/docs/tutorial/dbcon/http://flask.pocoo.org/docs/patterns/sqlite3/的特殊g对象

import sqlite3
from flask import g

DATABASE = '/path/to/database.db'

def connect_db():
    return sqlite3.connect(DATABASE)

@app.before_request
def before_request():
    g.db = connect_db()

@app.teardown_request
def teardown_request(exception):
    if hasattr(g, 'db'):
        g.db.close()
Run Code Online (Sandbox Code Playgroud)

方法二:使用来自https://github.com/mitsuhiko/flask/blob/master/examples/flaskr/flaskr.py的 Mysterious _app_ctx_stack

from sqlite3 import dbapi2 as sqlite3
from flask import Flask, request, session, g, redirect, url_for, abort, \
     render_template, flash, _app_ctx_stack
def get_db():
    """Opens a new database connection if there is none yet for the
    current application context.
    """
    top = _app_ctx_stack.top
    if not hasattr(top, 'sqlite_db'): …
Run Code Online (Sandbox Code Playgroud)

python sqlite flask

57
推荐指数
4
解决办法
4万
查看次数

标签 统计

flask ×1

python ×1

sqlite ×1