无效过滤器:每个查询只能有一个属性具有不等式过滤器(>=、<=、>、<)

2024-02-23

我有一些可以在某些时段预订的商品。例如。一个网球场。因此,每个项目都有许多关联的可用时段,每个可用时段由开始时间和结束时间定义。开始时间和结束时间被定义为日期时间对象,因此从 09.00 - 11.30 的可用时段存储为例如。 2013-12-13 09.00(开始时间)至 2013-12-13 11.30(结束时间)。

当收到预订请求时,我需要了解网球场在所需的时间段是否可用。

因此,我尝试根据开始时间和结束时间过滤可用时段,我的查询如下所示:

desired_availability_start = datetime(2013, 12, 13, 9,0,0)
desired_availability_end = datetime(2013, 12, 13, 10,0,0)
availability_slots = self.availability_slots.filter("begin <= ", desired_availability_start).filter("end >= ", desired_availability_end).fetch(limit=10)

但我收到以下错误

invalid filter: Only one property per query may have inequality filters (>=, <=, >, <)

因为我试图过滤 begin- 和 end- 属性。

根据输入内容和有关该主题的其他一些帖子AppEngine 数据存储区中的不平等过滤器 https://stackoverflow.com/questions/10809273/inequality-filter-in-appengine-datastore and BadFilterError:过滤器无效:每个查询只能有一个属性具有不等式过滤器(=、) https://stackoverflow.com/questions/13391818/badfiltererror-invalid-filter-only-one-property-per-query-may-have-inequality我当前的解决方案是首先在开始时进行过滤:

filtered_availability_slots = self.availability_slots.filter("begin <= ", desired_availability_start).fetch(limit=10)

然后最后过滤并将过滤后的项目附加到列表中:

final_availability_slots = []              
  for availability in filtered_availability_slots:         
      if availability.end >= desired_availability_end:  
        final_avaialability_slotes.append(availability)   

但这是实现我想要实现的目标的最佳方式吗?

我正在使用 Google App Engine 和 Python

任何帮助表示赞赏

谢谢 托马斯


我想您已经知道,使用数据存储时不能使用多个带有不等式过滤器的变量。除非您确实需要,否则您可以仅使用“开始”时间进行过滤,并且仍然可以获得相当准确的结果。

calitem = self.appointments.filter("begin >= ", start).filter("begin <= ", end).fetch(limit=10)

如果您确实需要,使用应用程序逻辑,您只能显示不超出“最终”值的项目。我看不到任何其他办法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无效过滤器:每个查询只能有一个属性具有不等式过滤器(>=、<=、>、<) 的相关文章

  • 从 ffmpeg 获取实时输出以在进度条中使用(PyQt4,stdout)

    我已经查看了很多问题 但仍然无法完全弄清楚 我正在使用 PyQt 并且希望能够运行ffmpeg i file mp4 file avi并获取流式输出 以便我可以创建进度条 我看过这些问题 ffmpeg可以显示进度条吗 https stack
  • 将数据帧行转换为字典

    我有像下面的示例数据这样的数据帧 我正在尝试将数据帧中的一行转换为类似于下面所需输出的字典 但是当我使用 to dict 时 我得到了索引和列值 有谁知道如何将行转换为像所需输出那样的字典 任何提示都非常感激 Sample data pri
  • 填充两个函数之间的区域

    import matplotlib pyplot as plt import numpy as np def domain x np arange 0 10 0 001 f1 lambda x 2 x x 2 0 5 plt plot x
  • 忽略 Mercurial hook 中的某些 Mercurial 命令

    我有一个像这样的善变钩子 hooks pretxncommit myhook python path to file myhook 代码如下所示 def myhook ui repo kwargs do some stuff 但在我的例子中
  • 以同步方式使用 FastAPI,如何获取 POST 请求的原始正文?

    在中使用 FastAPIsync not async模式 我希望能够接收 POST 请求的原始 未更改的正文 我能找到的所有例子都显示async代码 当我以正常同步方式尝试时 request body 显示为协程对象 当我通过发布一些内容来
  • 使用 OLS 回归预测未来值(Python、StatsModels、Pandas)

    我目前正在尝试在 Python 中实现 MLR 但不确定如何将我找到的系数应用于未来值 import pandas as pd import statsmodels formula api as sm import statsmodels
  • 对图像块进行多重处理

    我有一个函数必须循环遍历图像的各个像素并计算一些几何形状 此函数需要很长时间才能运行 在 24 兆像素图像上大约需要 5 小时 但似乎应该很容易在多个内核上并行运行 然而 我一生都找不到一个有据可查 解释充分的例子来使用 Multiproc
  • Python urllib.request.urlopen:AttributeError:'bytes'对象没有属性'data'

    我正在使用 Python 3 并尝试连接到dstk 我收到错误urllib包裹 我对SO进行了很多研究 但找不到与这个问题类似的东西 api url self api base street2coordinates api body jso
  • 将 JSON 对象传递给带有请求的 url

    所以 我想利用 Kenneth 的优秀请求模块 https github com kennethreitz requests 在尝试使用时偶然发现了这个问题自由库API http wiki freebase com wiki API 基本上
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 使用yield 进行字典理解

    作为一个人为的例子 myset set a b c d mydict item yield join item s for item in myset and list mydict gives as cs bs ds a None b N
  • 默认情况下,Keras 自定义层参数是不可训练的吗?

    我在 Keras 中构建了一个简单的自定义层 并惊讶地发现参数默认情况下未设置为可训练 我可以通过显式设置可训练属性来使其工作 我无法通过查看文档或代码来解释为什么会这样 这是应该的样子还是我做错了什么导致默认情况下参数不可训练 代码 im
  • Tkinter - 浮动窗口 - 调整大小

    灵感来自this https stackoverflow com a 22424245 13629335问题 我想为我的根窗口编写自己的调整大小函数 但我刚刚注意到我的代码显示了一些性能问题 如果你快速调整它的大小 你会发现窗口没有像我希望
  • 如何为每个屏幕添加自己的 .py 和 .kv 文件?

    我想为每个屏幕都有一个单独的 py 和 kv 文件 应通过 main py main kv 中的 ScreenManager 选择屏幕 设计应从文件 screen X kv 加载 类等应从文件 screen X py 加载 Screens
  • 迭代 my_dict.keys() 并修改字典中的值是否会使迭代器失效?

    我的例子是这样的 for my key in my dict keys my dict my key mutate 上述代码的行为是否已定义 假设my dict是一本字典并且mutate是一个改变其对象的方法 我担心的是 改变字典中的值可能
  • 您可以将操作直接应用于map/reduce/filter 中的参数吗?

    map and filter通常可以与列表理解互换 但是reduce并不那么容易被交换map and filter 此外 在某些情况下我仍然更喜欢函数语法 但是 当您需要对参数本身进行操作时 我发现自己正在经历语法体操 最终必须编写整个函数
  • 字典和数组作为类变量与实例变量

    这是赚取积分的简单方法 请解释以下内容 class C a b 0 c def init self self x def d self k v self x k v self a k v self b v self c append v d
  • 如何读取Python字节码?

    我很难理解 Python 的字节码及其dis module import dis def func x 1 dis dis func 上述代码在解释器中输入时会产生以下输出 0 LOAD CONST 1 1 3 STORE FAST 0 x
  • 列表值的意外更改

    这是我的课 class variable object def init self name name alias parents values table name of the variable self name 这是有问题的函数 f
  • 迭代 pandas 数据框的最快方法?

    如何运行数据框并仅返回满足特定条件的行 必须在之前的行和列上测试此条件 例如 1 2 3 4 1 1 1999 4 2 4 5 1 2 1999 5 2 3 3 1 3 1999 5 2 3 8 1 4 1999 6 4 2 6 1 5 1

随机推荐

  • Spring在单元测试中嵌入了ldap服务器

    我目前正在尝试使用嵌入式 LDAP 服务器进行单元测试 在 Spring Security 中 您可以快速定义一个嵌入式 ldap 服务器 以便使用标签以及从指定 ldif 加载的一些示例数据进行测试 我将使用 Spring Ldap 执行
  • 致命错误,因为传递的是 Error 实例而不是预期的 Exception 实例

    我刚刚安装了 xampp 和 php 7 0 4 以及新的 cakephp 3 2 6 我做了很多研究 我发现的一切都表明它们是兼容的 然而 当我用浏览器打开应用程序时 蛋糕就会回复内部错误 关于要做什么的唯一指示是 xampp 在 apa
  • 获取当前背景

    我想获取当前的背景并以此为基础做一个条件 例如 我有一个带有下一个箭头的xml 如果背景 R drawable A 我想在按下下一个按钮时将背景更改为R drawable B 我定义了我的相对布局如下 final RelativeLayou
  • python中a=b=c是什么? [复制]

    这个问题在这里已经有答案了 我很困惑 连续相等 可以在 python 中使用 例如 a b c 这个语言特性叫什么 有什么我可以读到的吗 能化成4个等号吗 a b c d 这只是一种声明方式a and b等于c gt gt gt c 2 g
  • 重写 editTextStyle 不适用于最新的材质组件基本样式

    在我的应用程序中 我使用Theme MaterialComponents Light NoActionBar作为基本样式 这种风格 我称之为AppTheme 我正在尝试覆盖editTextStyle提供自定义样式com google and
  • R 中的四参数 beta 分布

    R 中是否有内置函数可以计算四参数 beta 分布 即 具有两个形状参数和两个边界参数的分布 因此它不受 0 1 的限制 我自己做了一个 但很好奇这个功能是否已经存在 无需重新发明轮子 shp1 lt 20 shp2 lt 5 X lt s
  • Pandas/Python 根据条件添加行

    我希望根据某些条件在两个现有行之间的数据框中插入一行 例如 我的数据框 import pandas as pd df pd DataFrame Col1 A B D E Col2 B C E F Col3 1 1 1 1 看起来像 Col1
  • 高流量 Web 应用程序的最佳扩展方法?

    我们有一个新的网络应用程序项目 它将在网站 作为网络 上显示横幅广告 我们估计它每月可以处理 20 到 400 亿次展示 我们当前的语言是 ASP 但正在转向 PHP PHP 5 在扩展 Web 应用程序方面有限制吗 或者 我应该让我们的团
  • prolog 中递归的停止条件

    以下是我的知识库中的事实 http www doc gold ac uk mas02gw prolog教程 prolog页面 recursion html http www doc gold ac uk mas02gw prolog tut
  • 安卓蓝牙错误133

    我正在尝试连接到 Android 上的蓝牙设备 我的状态收到 133onClientConnectionState处理程序 我并不总是收到此错误 有时它连接正常 我无法确定是什么触发了这个问题 我什至在重新启动设备和我的重现应用程序后立即获
  • 将自定义类添加到在 Woocommerce 中显示“缺货”的变体选项

    我在用着 https stackoverflow com questions 47180058 how to add variation stock status to woocommerce product variation dropd
  • R's Match 的 Julia 版本?

    来自 R 的帮助页面match 描述 match 返回其 第一个 匹配项的位置向量 第一个参数在第二个参数中 也就是说 我可以给出两个向量 match v1 v2 返回一个向量 其中第 i 个元素是索引 其中v1 i 出现在v2 Julia
  • Google Apps 脚本是否支持私有类属性?

    我尝试使用私人课程特色 https developer mozilla org en US docs Web JavaScript Reference Classes Private class fields在 Google Apps 脚本
  • 在 Junit4 (PowerMock) 中实现模拟时的依赖关系

    下面是我的 JUnit 测试用例 import static org junit Assert assertEquals import static org junit Assert assertNull import static org
  • 从宿主语言注入成员以到达客体语言作为客体语言类型

    这个问题与以下问题有些关系 GraalVM 在没有上下文的情况下使用多语言值 https stackoverflow com questions 51669154 graalvm using polyglot value without a
  • 即使观察者被删除,通知观察者也会被多次调用

    当应用程序处于后台模式或手机处于睡眠状态并且收到 VoIP 推送时 AppDelegate 中的以下函数会引导用户 到UserTableViewController在应用程序中 并发布通知 viewDidLoad 中的通知观察者UserTa
  • 如何应对僵尸网络和自动提交

    短篇故事 我有一个网络应用程序 它具有巨大的参与动机 因此 我们正成为脚本编写者和机器人的重点攻击目标 根据提交内容的 IP 地址 超过 1000 个 并且还在不断增长 没有任何模式 我倾向于相信提交内容是由机器人网络生成的 更糟糕的是 控
  • 如何在 Firefox 附加 SDK 的 pageWorker 中加载多个 URL?

    使用以下示例 我可以从一个 URL 获取第一段 即ContentURL ex http www example com main js var getFirstParagraph var paras document getElements
  • 如何随机选择列表中的值?

    我正在使用Python 2 7 需要明确的是 我不想随机化列表中的项目 我想让某些字符串根本不显示 例如 r red b blue y yellow rc random colour myColours rc rc rc print myC
  • 无效过滤器:每个查询只能有一个属性具有不等式过滤器(>=、<=、>、<)

    我有一些可以在某些时段预订的商品 例如 一个网球场 因此 每个项目都有许多关联的可用时段 每个可用时段由开始时间和结束时间定义 开始时间和结束时间被定义为日期时间对象 因此从 09 00 11 30 的可用时段存储为例如 2013 12 1