मुझे 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 स्टेटमेंट, या एक अतिरिक्त जॉइन-स्टेटमेंट लिखे बिना) द्वारा फ़िल्टर करने की एक (प्रत्यक्ष) संभावना है, मुझे एक से अधिक बार इस तरह के फिल्टर की आवश्यकता है।
अगर कोई आसान उपाय नहीं है, तो भी मैं सभी जवाब पाकर खुश हूं।