【发布时间】:2022-01-15 06:01:17
【问题描述】:
我正在使用具有以下样式的 Flask-Sqlalchemy postgres 数据库模型:
class User(db.Model) // Holds the users
id = db.Column(db.Integer, primary_key=True)
...
class Track(db.Model) // Holds racing tracks
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(255), nullable=False)
class Record(db.Model) // Hold users records on tracks
id = db.Column(db.Integer, primary_key=True)
user_id = db.Column(db.Integer, db.ForeignKey("user.id"), primary_key=True)
track_id = db.Column(db.Integer, db.ForeignKey("map.id"), primary_key=True)
time = db.Column(db.BigInteger, nullable=False)
我现在的目标是创建一个包含用户完成的所有曲目的视图。在普通的 PostgresSQL 中,它看起来像这样:
CREATE VIEW OR REPLACE user_tracks_finished AS
SELECT DISTINCT user_id, track_id
FROM record;
用户模型看起来像这样:
class User(db.Model) // Holds the users
id = db.Column(db.Integer, primary_key=True)
finished_tracks = db.relationship(...)
我无法使用 flask-sqlalchemy 模块创建视图。有一个 sqlalchemy-views 模块,我无法在我的烧瓶应用程序中运行它。有人对如何建模这样的东西有一个好主意吗?任何帮助不胜感激!
【问题讨论】:
标签: python postgresql flask sqlalchemy