栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

查询父模型时可以过滤关系的内容吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

查询父模型时可以过滤关系的内容吗?

关系默认情况下是一个简单的相等表达式:

Parent.id ==ForeignKey.id
。您不能在查询时更改关系的内容*,但是可以创建另一个仅选择所需项目的关系。

class PKMovie(db.Model):    # ...    future_show_times = db.relationship(        lambda: ShowTime,        primaryjoin=lambda: db.and_( PKMovie.id == ShowTime.pk_movie_id, ShowTime.date >= db.func.current_timestamp()        ),        viewonly=True    )

访问实例的实例

future_show_times
将仅返回将来的放映时间。您可以在查询期间急于加载此关系,以免在访问时引起额外的数据库查询。

PKMovie.query.options(db.joinedload(PKMovie.future_show_times)).all()

有关关系,请参见文档。


*从技术上讲,您 可以 在查询时更改关系,如本答案所示。但是,我认为明确定义这些其他关系要清晰得多。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/646186.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号