ฉันไม่มีประสบการณ์กับ 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 หรือคำสั่งเข้าร่วมเพิ่มเติม) ฉันต้องการตัวกรองประเภทนี้มากกว่าหนึ่งครั้ง
ถึงแม้จะไม่มีวิธีง่ายๆ แต่ก็ยินดีรับคำตอบทุกประการ