2017-02-20 45 views
1

我想從我的數據庫中提取的記錄,但我得到表不可用,即使燒瓶SQLAlchemy的create_all被稱爲

OperationalError: (sqlite3.OperationalError) no such table: driver 

即使我定義的模型,並呼籲db.create_all()。爲什麼這不起作用?

from flask import Flask 
from flask_sqlalchemy import SQLAlchemy 

app = Flask(__name__) 
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////tmp/test.db' 
db = SQLAlchemy(app) 
db.create_all() 

class Driver(db.Model): 
    id = db.Column(db.Integer, primary_key=True) 

@app.route('/') 
def index(): 
    result = Driver.query.all() 
    return render_template('index.html', result=result) 

回答

2

您在定義模型之前打電話create_all。在您定義或導入所有模型後,將create_all移至。

class Driver(db.Model): 
    ... 

db.create_all() 
相關問題