SQLAlchemy полиморфен для нескольких идентификаторов классаPython

Программы на Python
Anonymous
SQLAlchemy полиморфен для нескольких идентификаторов класса

Сообщение Anonymous »

Я пытаюсь реализовать наследование одной таблицы с помощью SQLAlchemy.
Согласно официальной документации 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

Вернуться в «Python»