【问题标题】:Flask Tutorial - "Attribute Error"Flask 教程 - “属性错误”
【发布时间】:2012-02-17 11:35:34
【问题描述】:

我是一个新手 - 刚读完 Learn Python the Hard Way 的结尾,现在正在尝试使用 Flask。我从 Flask 网站上的官方教程开始,但卡在this step

from __future__ import with_statement
import sqlite3
from flask import Flask, request, session, g, redirect, url_for, abort, render_template, flash
from contextlib import closing

DATABASE = 'tmp/flaskr.db'
DEBUG = True
SECRET_KEY = 'development key'
USERNAME = 'admin'
PASSWORD = 'default'

app = Flask(__name__)
app.config.from_object(__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') as f:
            db.cursor.executescript(f.read())
        db.commit()

if __name__ == '__main__':
    app.run()

如果我这样做的话,在 Python Shell 中

from flaskr import init_db
init_db() 

我明白了:Attribute Error: Flask object has no attribute 'open' (in the line containing app.open.resource in init_db)。我该如何解决这个问题?

【问题讨论】:

    标签: python flask


    【解决方案1】:

    您的代码:

    app.open.resource
    

    示例代码:

    app.open_resource
    

    你能看出区别吗?如果您不能,示例代码在您使用点的地方使用下划线。 Flask 对象没有名为open 的属性,但它有一个名为open_resource 的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-13
      • 2012-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-17
      • 1970-01-01
      相关资源
      最近更新 更多