python - 使用 PostgresSQL 连接时出现 Flask 和 SQLAlchemy 错误
问题描述
我试图将我的第一个 Flask 应用程序与 SQLAlchemy 和 PostGreSQL 连接,但遇到以下错误。
UserWarning: Neither SQLALCHEMY_DATABASE_URI nor SQLALCHEMY_BINDS is set. Defaulting SQLALCHEMY_DATABASE_URI to "sqlite:///:memory:".
'Neither SQLALCHEMY_DATABASE_URI nor SQLALCHEMY_BINDS is set. '
经过几个小时的调试可能非常简单的事情,我用完了选项。从错误看来,问题出在 SQLAlCHEMY_DATABASE_URI 的变量上,但不是 100% 确定。我试过localhost
localhost:5000` 但同样的错误。
阅读 SO 中的其他答案,我看到有时人们在定义配置时会遇到这个问题,db = SQLAlchemy(app)
但我的代码中没有这样的问题。非常感谢任何潜在客户。
from flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config.update(
SECRET_KEY='rafadbpw',
SQLAlCHEMY_DATABASE_URI='postgresql://postgres:rafadbpw@localhost:5000/catalog_db',
SQLALCHEMY_TRACK_MODIFICATIONS=False
)
db = SQLAlchemy(app)
@app.route('/index')
@app.route('/')
def hello_flask():
return "Hello Flask!"
class Publication(db.Model):
__tablename__ = 'publication'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
def __init__(self,id,name):
self.id = id
self.name = name
def __repr__(self):
return 'The id is {}, name is {}'.format(self.id, self.name)
if __name__ == '__main__':
db.create_all()
app.run(debug=True)
解决方案
推荐阅读
- eclipselink - EclipseLink Moxy 与 Java11
- react-native - 如何在 React-native 中调用 Field 渲染方法之外的函数?
- monitoring - Grafana/Graphite 将 y 轴标签更改为折线图的 %
- vb.net - 为什么我没有将对象引用设置为 Google Drive Api 中的对象实例?
- vb.net - 为什么其他列也不接受 datagridview 单元格格式的字母?
- javascript - 不能将 @Res() 与 FilesInterceptor() 一起使用
- python - 运行 pytest 测试给 pluggy 错误,设置有问题吗?
- arrays - 将字典值附加到 Swift 中的数组
- sql - 按帐号计算的两次交易之间的时间差(以天为单位)
- python - 在 Python 中扩展列表时的一些奇怪行为