NameError:名称“db”未定义,python,html,flask"/>

首页 > 解决方案 > Traceback(最近一次通话最后一次):文件“",第 1 行,在NameError:名称“db”未定义

问题描述

''' import db.py from flask import Flask, render_template from flask_sqlalchemy import SQLAlchemy from datetime import datetime

app =Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///posts.db'


class Question(db.model):
     id = db.Column(db.Integer, primary_key=True)
     title  = db.Column(db.String(100), nullable=False)
     content = db.Column(db,Text, nullable=False)
     Date_Posted = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)

     def __repr__(self):
         return 'Question' + str(self.id)


@app.route('/mainpage' , methods = ['GET'])
def mainpage():
    return render_template("main.html")

@app.route('/askdaiwik')
def ask():
    return render_template("ask.html" , ask = all_ask)

if __name__ == "__main__":
    app.run(debug=True)

'''

标签: pythonhtmlflask

解决方案


如果我没记错的话,您正在尝试将SQLAlchemy对象用作db. 但是您没有创建对象,因此db未定义。

包装您的应用程序SQLAlchemy以创建对象并将变量分配给db实例。

db = SQLAlchemy(app) 

推荐阅读