Bin*_*lai 4 python postgresql session flask
在我们的一个新项目中,我们希望将会话数据存储到 PostgreSQL 数据库中。
我在互联网上找到了几个代码片段来执行此操作,但没有一个特定于 PostgreSQL。
使用Flask-Session 项目;它提供了一个 Flask 会话实现,可以将数据存储在任何SQLAlchemy 支持的数据库中,包括 PostgreSQL。
安装受支持的 PostgreSQL 客户端库之一;大多数人使用psycopg2。
安装Flask-SQLAlchemy;当您这样做时,它会引入 SQLAlchemy。该库将 SQLAlchemy 与 Flask 集成。
安装 Flask-Session 并将其配置为使用 SQLAlchemy 会话类型和 PostgreSQL 连接 URI;通过将以下配置选项添加到 Flask 配置中来实现此目的:
SESSION_TYPE = "sqlalchemy"
# URI to connect to the database. postgresql:// uses psycopg2, see the documentation
SESSION_SQLALCHEMY = "postgresql://<user>:<password>@hostname:port/database"
# What table in the database to use, default is "sessions"
SESSION_SQLALCHEMY_TABLE = "sessions"
Run Code Online (Sandbox Code Playgroud)
在 Flask 应用程序中使用 Flask-Session 扩展;以下代码假设您有一个app作为Flask()对象的变量,已使用上述配置进行配置:
SESSION_TYPE = "sqlalchemy"
# URI to connect to the database. postgresql:// uses psycopg2, see the documentation
SESSION_SQLALCHEMY = "postgresql://<user>:<password>@hostname:port/database"
# What table in the database to use, default is "sessions"
SESSION_SQLALCHEMY_TABLE = "sessions"
Run Code Online (Sandbox Code Playgroud)
强调一下:因为 Flask-Session 使用 SQLAlchemy,所以它可以与SQLAlchemy 支持的所有数据库引擎一起使用,而不仅仅是 PostgreSQL。因此,上述内容适用于 SQLite、MySQL、Oracle、Microsoft SQL Server、Firebird、Sybase 以及任何数量的具有第三方 SQLAlchemy 方言包的其他数据库。
| 归档时间: |
|
| 查看次数: |
3639 次 |
| 最近记录: |