Flask Tutorial - "Ошибка атрибута" - PullRequest
2 голосов
/ 17 февраля 2012

Я новичок - только что подошел к концу Learn Python на нелегком пути и сейчас пробую свои силы в Flask.Я начал с официального урока на веб-сайте Flask, но застрял на этом шаге :

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).Как мне это исправить?

1 Ответ

2 голосов
/ 17 февраля 2012

Ваш код:

app.open.resource

Пример кода:

app.open_resource

Можете ли вы определить разницу?Если вы не можете, в примере кода используется подчеркивание, где вы используете точку.Объект Flask не имеет атрибута с именем open, но у него есть метод с именем open_resource.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...