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

将所有python

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

将所有python

您提供的代码有两个问题,这些问题解释了为什么获得结果。

第一个问题是您的查询

test.query.filter(url='.').all()
将返回一个空列表。这将仅由于您没有与指定过滤器一起使用的有效索引而返回空列表。您确实有该列的2个索引-
唯一索引(用于按精确字符串查找url)和后缀索引(用于查找以特定字符串结尾的url)-但都不能提供按内容进行过滤的功能在关系世界中,存在一个“喜欢”查询。前缀索引(使用创建的索引
prefix=True
)可以让您使用
test.query.like(url='*.')
,但这会非常慢(它执行索引扫描而不是直接查找[1])。

为了帮助防止出现与索引/查询相关的问题,当用户尝试通过不存在的索引过滤数据时,我添加了QueryError异常。今晚晚些时候,我将通过这些更改发布0.31.4。

您遇到的第二个错误(是导致异常的原因)是您在

.count()
没有参数的情况下进行调用。在
h.count()
调用时
type(h) ==list
,和和Python列表对象需要一个参数来对等于列表中提供的参数的值进行计数。如果跳过
.all()
原始查询的一部分,则会返回一个查询对象。该查询对象具有一个
.count()
方法,并将返回匹配结果的计数。

[1]并非rom中的所有“喜欢”查询都很慢,但是快速的查询需要非通配符前缀以限制要扫描/过滤的数据范围。



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

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

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