Tôi không có nhiều kinh nghiệm với SQLAlchemy và tôi gặp sự cố mà tôi không thể giải quyết. Tôi đã thử tìm kiếm và tôi đã thử rất nhiều mã. Đây là Lớp của tôi (được giảm xuống mã quan trọng nhất):
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)
và tôi muốn truy vấn tất cả bệnh nhân có chỉ số phenoscore của mẹ (ví dụ) == 10
Như đã nói, tôi đã thử rất nhiều mã, nhưng tôi không nhận được nó. Giải pháp hợp lý, trong mắt tôi, sẽ là
patients = Patient.query.filter(Patient.mother.phenoscore == 10)
bởi vì, bạn có thể truy cập .mother.phenoscore
cho từng phần tử khi xuất ra, nhưng mã này không làm điều đó.
Có khả năng (trực tiếp) để lọc theo một thuộc tính của một mối quan hệ (mà không cần viết Câu lệnh SQL hoặc một câu lệnh kết hợp bổ sung) không, tôi cần loại bộ lọc này nhiều lần.
Ngay cả khi không có giải pháp dễ dàng, tôi rất vui khi nhận được tất cả các câu trả lời.