Flask API搭建报错:SQLALCHEMY_DATABASE_URI未定义问题排查与解决
Flask API搭建中SQLALCHEMY_DATABASE_URI未定义错误解决
问题场景
搭建Flask API基础框架时,配置数据库连接后,IDE及运行程序均提示SQLALCHEMY_DATABASE_URI未定义,但模块导入无异常。
出错代码
from flask import Flask from flask_sqlalchemy import SQLAlchemy from sqlite3 import Connection as SQLite3Connection from datetime import datetime from sqlalchemy import event from sqlalchemy.engine import Engine from flask import Flask, request, jsonify app = Flask(__name__) app.config[SQLALCHEMY_DATABASE_URI] = "sqlite:///sqlitedb.file" app.config[SQLALCHEMY_TRACK_MODIFICATIONS] = 0
错误原因
Flask的app.config是字典类型,配置键需要是字符串。代码中直接使用SQLALCHEMY_DATABASE_URI和SQLALCHEMY_TRACK_MODIFICATIONS作为键,Python会将其识别为未定义的变量,而非字符串键名。
解决方法
给配置键添加引号,将其转为字符串类型:
from flask import Flask from flask_sqlalchemy import SQLAlchemy from sqlite3 import Connection as SQLite3Connection from datetime import datetime from sqlalchemy import event from sqlalchemy.engine import Engine from flask import Flask, request, jsonify app = Flask(__name__) # 为配置键添加引号 app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///sqlitedb.file" app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = 0
内容的提问来源于stack exchange,提问作者dongus
相关产品推荐
相关产品推荐

