У меня нет большого опыта работы с SQLAlchemy, и у меня есть проблема, которую я не могу решить. Я пытался искать, и я пробовал много кода.
Это мой класс (сокращен до наиболее значимого кода):
class Patient(Base):
__tablename__ = 'patients'
id = Column(Integer, primary_key=True, nullable=False)
mother_id = Column(Integer, ForeignKey('patients.id'), index=True)
mother = relationship('Patient', primaryjoin='Patient.id==Patient.mother_id', remote_side='Patient.id', uselist=False)
phenoscore = Column(Float)
и я хотел бы опросить всех пациентов, у которых феномен матери (например) == 10
Как я уже сказал, я много пробовал кода, но не понимаю. Логичным решением, на мой взгляд, было бы
patients = Patient.query.filter(Patient.mother.phenoscore == 10)
потому что вы можете получить доступ к .mother.phenoscore
для каждого элемента при выводе, но этот код этого не делает.
Существует ли (прямая) возможность фильтрации по атрибуту отношения (без написания оператора SQL или дополнительного оператора соединения), мне нужен фильтр такого типа более одного раза.
Даже если нет простого решения, я с удовольствием получу все ответы.