Python 带泛型类的Sqlalchemy继承

Python 带泛型类的Sqlalchemy继承,python,sqlalchemy,Python,Sqlalchemy,我正在尝试为网站创建数据库模式。现在情况很容易理解 我有一个Reviewable类,它定义了一些常量,所有我的可查看项目都应该共享,比如id、标题、与类别的关系,因为可查看对象可以有许多类别,并且对于Review关系来说是相同的 类可查看(对象): id=db.Column(db.Integer,主键=True) title=db.Column(db.String,unique=True) categories=db.relationship('Category',secondary=categ

我正在尝试为网站创建数据库模式。现在情况很容易理解

我有一个
Reviewable
类,它定义了一些常量,所有我的可查看项目都应该共享,比如id、标题、与
类别的关系,因为可查看对象可以有许多类别,并且对于
Review
关系来说是相同的

类可查看(对象):
id=db.Column(db.Integer,主键=True)
title=db.Column(db.String,unique=True)
categories=db.relationship('Category',secondary=categories,backref=db.backref('reviewables',lazy='dynamic'))
reviews=db.relationship('Review',backref='reviewables',lazy='dynamic')
定义报告(自我):
返回自己的标题
def保存(自我):
db.session.add(self)
db.session.commit()
课堂电影(可查阅):
cover\u url=db.Column(db.String)
imdb_url=db.Column(db.String)
allocine_url=db.Column(db.String)
release\u date=db.Column(db.DateTime)
发布日期=db.Column(db.DateTime)
课堂复习(db.Model):
id=db.Column(db.Integer,主键=True)
等级=分贝列(分贝整数)
评论家=db.Column(db.String)
user\u id=db.Column(db.Integer,db.ForeignKey('user.id'))
reviewable_id=db.Column(db.Integer,db.ForeignKey('??.id'))
定义报告(自我):
返回“{}”格式(self.user)

现在,由于Reviewable不会存储在数据库中,我不知道在我的
Reviewable\u id
外键中放什么。。。有没有办法让我达到这样的目标?或者是我误解了我的数据库(这是完全可能的,因为我不习惯这样做)

您将无法使用Reviewable和Movie创建一个类。您尝试使用SQLAlchemy语法,但不使用SQLAlchemy基础模型。也许还值得查看关于继承的SQLAlchemy文档:我实际上正在使用Flask SQLAlchemy插件。Reviewable类可能是错误的,但其他类完全没有问题:)当然,但您的问题的标题是“Flask Sqlalchemy继承与泛型类”。这无法实现,因为Sqlalchemy使用特殊的元类。嗯。。。我想你是对的。我将阅读文档。不过,如果有人能举个例子说明如何做到这一点,这可能会有所帮助^^