gpt4 book ai didi

objectify - 仅返回在 Objectify 中列表字段为空的实体

转载 作者:行者123 更新时间:2023-12-01 10:51:28 25 4
gpt4 key购买 nike

是否可以通过仅返回特定列表字段为空的实体来过滤 objectify 中的实体?

例如,如果我有一个客户端实体,它有一个属性“地址”,属于列表类型,我如何才能只返回根本没有关联地址的客户端?

是否有某种“为空”或“为空”的过滤器?像这样的东西:

ofy().load().type(Client.class).filter("address", null).list();

ofy().load().type(Client.class).filter("address is", null).list();

非常感谢。

最佳答案

列表属性表示数据存储中没有数据;没有办法存储或索引“空列表”。

最好的办法是创建一个像“addressless”这样的综合索引属性,并在 @OnSave 方法中填充它:

class Client {
...

@Index(IfTrue.class) boolean addressless;

@OnSave void updateAddressless() {
this.addressless = address.isEmpty();
}
}

您现在可以按此过滤。该属性不必具有 getter/setter,因此它可以对您的应用程序的其余部分完全隐藏(除了作为过滤条件)。

这种策略对于处理难以查询的情况通常很方便。

关于objectify - 仅返回在 Objectify 中列表字段为空的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19302575/

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