gpt4 book ai didi

python - 如何在 Flask/SQLAlchemy 中选择_rel​​ated()?

转载 作者:太空狗 更新时间:2023-10-30 01:01:15 25 4
gpt4 key购买 nike

有以下型号:

 class Question(db.Model):
id = db.Column(db.Integer(), primary_key=True)
title = db.Column(db.String(125))
text = db.Column(db.Text())
answers = db.relationship('Answer', backref='for_question')


class Answer(db.Model):
id = db.Column(db.Integer(), primary_key=True)
text = db.Column(db.Text())
question_id = db.Column(db.Integer(), db.ForeignKey('question.id'))

如何在 SQLAlchemy/Flask 中执行 select_related?

我在文档中发现我可以做类似的东西

session.query(Question).options(joinedload(Question.aswers))

但我需要先通过id获取具体的问题,然后选择与之相关

所以我需要这样的东西

Question.query.get(5).select_related()

我可以这样做吗?

最佳答案

answers = Question.query.options(joinedload(Question.answers)).get(5).answers

表达式 Question.query.options(joinedload(Question.answers)).get(5) 发出带有连接的查询并评估为 Question 实例。访问 answers 属性不会发出任何查询。

你也可以更明确地做到这一点

answers = Answer.query.filter_by(question_id=5).all()

关于python - 如何在 Flask/SQLAlchemy 中选择_rel​​ated()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27983129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com