如何在SQLAlchemy中添加多个继承关系?
所以,我有一个用户表、雇员表和租户表 我正在使用联接表继承如何在SQLAlchemy中添加多个继承关系?,sqlalchemy,polymorphism,Sqlalchemy,Polymorphism,所以,我有一个用户表、雇员表和租户表 我正在使用联接表继承 class User(Base): __tablename__ = 'usr_users' usr_user_id = Column(Integer, primary_key=True) usr_first_name = Column(Unicode(50)) usr_last_name = Column(Unicode(50)) tenant = relationship("Tenant"
class User(Base):
__tablename__ = 'usr_users'
usr_user_id = Column(Integer, primary_key=True)
usr_first_name = Column(Unicode(50))
usr_last_name = Column(Unicode(50))
tenant = relationship("Tenant", uselist=False, backref="User")
usr_type = Column(String(24))
__mapper_args__ = {
'polymorphic_identity':'user',
'polymorphic_on': usr_type
}
class Tenant(User):
"""
Application's user model.
"""
__tablename__ = 'ten_tenants'
ten_tenant_id = Column(Integer, ForeignKey('usr_users.usr_user_id'), primary_key=True)
__mapper_args__ = {
'polymorphic_identity': 'tenant'
}
class Employee(User):
__tablename__ = 'emp_employees'
emp_employee_id = Column(Integer, ForeignKey('usr_users.usr_user_id'), primary_key=True)
__mapper_args__ = {
'polymorphic_identity': 'employee'
}
当一个用户成为一名员工时,我的一切都正常工作了
user = Employee()
session.add(user)
用户表中的一个条目,以及“employee”的“type”列中的一个值
但如果我有一个既是员工又是租户的用户呢
我应该使用什么语法来拉取用户,然后添加租户关系,以便生成的用户同时具有员工关系和租户关系