V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
knowaeap
V2EX  ›  问与答

按着 flask 教程一步一步的走,报错..求指导...

  •  
  •   knowaeap · Apr 29, 2014 · 3697 views
    This topic created in 4393 days ago, the information mentioned may be changed or developed.
    教程地址:http://docs.jinkan.org/docs/flask/tutorial/dbinit.html#tutorial-dbinit

    2 from contextlib import closing
    3 import sqlite3
    4 from flask import Flask, request, session, g, redirect, url_for, \
    5 abort, render_template, flash
    6 # configuration
    7 DATABASE = '/tmp/flaskr.db'
    8 DEBUG = True
    9 SECRET_KEY = 'development key'
    10 USERNAME = 'admin'
    11 PASSWORD = 'default'
    12 # create our little application :)
    13 app = Flask(__name__)
    14 app.config.from_envvar('FLASKR_SETTINGS', silent=True)
    15 def connect_db():
    16 return sqlite3.connect(app.config['DATABASE'])
    17 def init_db():
    18 with closing(connect_db()) as db:
    19 with app.open_resource('schema.sql') as f:
    20 db.cursor().executescript(f.read())
    21 db.commit()
    22 if __name__ == '__main__':
    23 app.run()
    -----------------------------
    报错:
    >>> from flaskr import init_db
    >>> init_db()
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "flaskr.py", line 18, in init_db
    with closing(connect_db()) as db:
    File "flaskr.py", line 16, in connect_db
    return sqlite3.connect(app.config['DATABASE'])
    KeyError: 'DATABASE'
    3 replies    2014-04-30 20:22:45 +08:00
    casparchen
        1
    casparchen  
       Apr 29, 2014   ❤️ 1
    replace the following line:
    app.config.from_envvar('FLASKR_SETTINGS', silent=True)
    to:
    app.config.from_object(__name__)
    Because you write all code in one single file. I don't know why you use from_envvar.
    knowaeap
        2
    knowaeap  
    OP
       Apr 30, 2014
    thank you very much ... I use from_envvar because I don't know what's meaning...
    knowaeap
        3
    knowaeap  
    OP
       Apr 30, 2014
    @casparchen thank you very much ... I use from_envvar because I don't know what's meaning...
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3019 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 03:58 · PVG 11:58 · LAX 20:58 · JFK 23:58
    ♥ Do have faith in what you're doing.