Согласно официальной документации SQLAlchemy (здесь: официальная документация), способ назначения единого полиморфного идентификатора следующий: следует:
Код: Выделить всё
class Employee(Base):
__tablename__ = 'employee'
id = Column(Integer, primary_key=True)
name = Column(String(50))
type = Column(String(50))
__mapper_args__ = {
'polymorphic_identity':'employee',
'polymorphic_on':type
}
Код: Выделить всё
class Employee(Base):
__tablename__ = 'employee'
id = Column(Integer, primary_key=True)
name = Column(String(50))
type = Column(String(50))
__mapper_args__ = {
'polymorphic_identity':'employee',
'polymorphic_on':type
}
class Manager(Employee):
manager_name = Column(String(30))
company_id = Column(ForeignKey('company.id'))
company = relationship("Company", back_populates="managers")
__mapper_args__ = {
'polymorphic_identity': ['manager', 'ceo'],
}
Код: Выделить всё
'polymorphic_identity': ['manager', 'ceo']
Я хотел бы знать, есть ли какой-нибудь способ присвоение нескольких полиморфных идентификаторов одному классу.
К сожалению, я не смог найти подобного примера в документации.
Подробнее здесь: https://stackoverflow.com/questions/531 ... or-a-class