Как реализовать связь с одной и той же таблицей без использования полей первичного ключа? - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть таблица типа

Groups(Base):
  id = Column(Integer, primary_key=True)
  code = Column(Integer, index=True)
  parent_code = Column(Integer, index=True)

Мне нужно добавить детей в мою модель, используя соединение по parent_code = code.

Я нашел пример в официальных документах по SQL-алхимии: https://docs.sqlalchemy.org/en/11/orm/self_referential.html Но в примерах всегда используются первичные ключи для получения дочерних строк без строгого условия соединения.

Я пытался добавить:

  children = relationship(Groups, 
primaryjoin='Groups.code=Groups.parent_code', uselist=True)

, но это не сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...