我有以下SQLAlchemy类:
class Survey(db.Model):
id = db.Column(db.Integer, primary_key=True)
questions = db.relationship('Question', backref='survey', lazy='dynamic')
class Questions(db.Model):
id = db.Column(db.Integer, primary_key=True)
survey_id = db.Column(db.Integer, db.ForeignKey('survey.id'))
bank_id = db.Column(db.Integer, db.ForeignKey('bank.id'))
class Bank(db.Model):
id = db.Column(db.Integer, primary_key=True)
order = db.Column(db.Integer, nullable=False)
questions = db.relationship('Question', backref='bank', lazy='dynamic')
因此,调查和银行都有问题,问题的顺序取决于问题的母银行。
给定一项调查,我如何才能按顺序字段以升序获得问题清单?我可以很容易地得到问题,如果有必要,我可以在此之后对它们进行排序,但是我想知道是否还有更直接的方法。
答案 0 :(得分:2)
我不确定给定辅助表的行为,但是您可以将order_by
传递到relationship()
中,例如:
questions = db.relationship('Question', order_by='asc(Question.bank.order)' ... )