簡體   English   中英

即使調用了Flask-SQLAlchemy create_all,表也不可用

[英]Table isn't available even though Flask-SQLAlchemy create_all was called

我正在嘗試從數據庫中獲取記錄,但是我得到了

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)

在定義模型之前,您要先調用create_all 定義或導入所有模型后,將create_all移至。

class Driver(db.Model):
    ...

db.create_all()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM