在 Google App Engine 中搜索现有用户
Search for existing Users in Google App Engine
我有一个 User
实体 class,如下所示:
@Entity
public class User {
@Id
private Long id;
@Index
private String username;
private Long dateOfBirth;
// More fields...
}
我想创建一个 API 方法来搜索数据存储区中所有 User
或多或少匹配搜索文本的实体和 return 可能结果列表。例如;
public CollectionResponse<User> searchForUser(@Named("text") searchText searchText) {
// Some code here.
}
此 API 方法将用于 Android 应用程序,用户在该应用程序中一次输入一个字符的用户名。每次输入字符时,我都会使用 searchForUser()
方法 运行 以及他们目前输入的内容和 return 可能的建议列表。
如果您以前使用过这种方法,有人对如何开始使用有任何建议吗?谢谢。
根据您的用例,您总是会 return 一定数量的结果(例如 5)。因此,您可以 运行 一个标准查询,在用户名 属性 上使用不等式过滤器,并对结果数量设置限制 returned。确保在用户名上添加排序顺序。
例如,如果用户键入 "an",您将搜索用户名 >= "an" 的所有实体。
返回结果后,删除那些不是以用户输入开头的。例如,
andre - add to response
andrei - add to response
boris - do not add and stop - all subsequent entries won't match
现在您知道只有两个结果与用户输入匹配。
我有一个 User
实体 class,如下所示:
@Entity
public class User {
@Id
private Long id;
@Index
private String username;
private Long dateOfBirth;
// More fields...
}
我想创建一个 API 方法来搜索数据存储区中所有 User
或多或少匹配搜索文本的实体和 return 可能结果列表。例如;
public CollectionResponse<User> searchForUser(@Named("text") searchText searchText) {
// Some code here.
}
此 API 方法将用于 Android 应用程序,用户在该应用程序中一次输入一个字符的用户名。每次输入字符时,我都会使用 searchForUser()
方法 运行 以及他们目前输入的内容和 return 可能的建议列表。
如果您以前使用过这种方法,有人对如何开始使用有任何建议吗?谢谢。
根据您的用例,您总是会 return 一定数量的结果(例如 5)。因此,您可以 运行 一个标准查询,在用户名 属性 上使用不等式过滤器,并对结果数量设置限制 returned。确保在用户名上添加排序顺序。
例如,如果用户键入 "an",您将搜索用户名 >= "an" 的所有实体。
返回结果后,删除那些不是以用户输入开头的。例如,
andre - add to response
andrei - add to response
boris - do not add and stop - all subsequent entries won't match
现在您知道只有两个结果与用户输入匹配。