请python高手帮看下Flask数据库配置有什么问题,pythonflask,请问以下Flask数据库


请问以下Flask数据库配置哪里出错了呢?我是根据教程一步一步来做的:
教程: http://dormousehole.readthedocs.org/en/latest/tutorial/dbinit.html#tutorial-dbinit

#------code------# all the importsimport sqlite3from flask import Flask, request, session, g, redirect, url_for,abort, render_template, flashfrom contextlib import closing# configurationDATABASE = '/tmp/flaskr.db'DEBUG = TrueSECRET_KEY = 'development key'USERNAME = 'admin'PASSWORD = 'default'​# create our little application :)app = Flask(__name__)app.config.from_envvar('FLASKR_SETTINGS', silent = True)def connect_db():return sqlite3.connect(app.config['DATABASE'])def init_db():with closing(connect_db()) as db:with app.open_resource('schema.sql', mode='r') as f:db.cursor().executescript(f.read())db.commit()#------Runing in Python IDEL------>>> from flaskr import init_db>>> init_db()Traceback (most recent call last):  File "<stdin>", line 1, in <module>  File "flaskr.py", line 22, in init_db    with closing(connect_db()) as db:  File "flaskr.py", line 19, in connect_db    return sqlite3.connect(app.config['DATABASE'])KeyError: 'DATABASE'

DATABASE = '/tmp/flaskr.db'应该是没有问题的。
在文件中加上这一行:

    app.config.from_object(__name__)

就OK了,这行代码会从本文件加载配置。

1、configuration不做单独文件
2、DATABASE 用绝对路径

DATABASE = '/tmp/flaskr.db' 这行配置,确认在运行后能找到该数据库?有的话还得确认路径相对或绝对 ??

sudo python

编橙之家文章,

评论关闭