python - TinyDB 删除 WHERE 多个值为真
问题描述
在 Python 中,我试图从 TinyDB 中删除 2 个值匹配的条目。
示例数据库:
{
"_default": {
"1": {
"GuildID": 123,
"RoleName": "role"
},
"2": {
"GuildID": 321,
"RoleName": "role"
}
}
如果我做
db.remove(where('RoleName' == role))
它将删除这两个条目,但我不希望这样。我想GuildID
匹配RoleName
我认为这会起作用,但显然不是
db.remove(where('RoleName' == role) & ('GuildID' == 321))
上面的查询在数据库中根本找不到任何值,但我希望它删除条目2
解决方案
已修复,我使用了 TinyDB 的Query
函数
from tinydb import Query
QueryBuilder = Query()
db.remove((QueryBuilder.RoleName == role) & (QueryBuilder.GuildID == 321))
推荐阅读
- c# - 获取十六进制值 0x3c 是无效的属性字符
- android - 在circleci环境中接受构建工具30.0.2的许可
- javascript - 如何在 NodeList 中添加新创建的元素?
- html - 我想让这个部分的高度随着它的内容而增加
- nginx - http 上的 404 错误 - 让我们加密 certbot ,一切都很好 https
- php - 如何使用短代码在 Word Press 中重定向 URL
- python - 使用数据着色器作为线从数据框中绘制多个组
- docker - 使用 ASP.NET Core 中的部分将 docker 机密读入配置
- excel - 从另一个工作簿 VBA>> 运行时 1004 错误中选择列
- php - 每天的最新价值 - Laravel Eloquent