我正在开发一个需要将多个表合并到一个User类中的Web应用程序。问题是某些用户需要链接到一个表而其他用户需要链接到另一个表。这是我的模型如何设置的一般视图。
class User(Model):
IDType1 = Column(Integer())
IDType2 = Column(Integer())
Active = Column(Boolean())
#...
class OtherType1(Model):
ID = Column(Integer())
Active = Column(Boolean())
#...
class OtherType2(Model):
ID = Column(Integer())
Active = Column(Boolean())
#...
每个OtherType都有一个标记为活动或非活动的标记,并使用相对频率进行更新。我希望能够检查用户是否处于活动状态,这意味着我必须可变地检查他们各自的标志是否被标记为活动状态。理想情况下,我想执行下面的查询,但我不知道这是否可能。
query = User.query.filter(User.is_active==True)
我能想到的最好的选择是有一个名为active_users的方法,它创建一个基本的Query,其中包含Join / Where语句,但我很好奇是否有更好的方法。