0

我想知道存储数据的最佳方式是什么适合我的情况。我想为一个人存储一个属性列表,例如电话号码。例如:

姓名:John Doe 号码:0998234、23443145、2341234、3425425

问题是,给定一个数字,我如何通过“数字”属性搜索来定位 John Doe。从我读过的内容来看,没有使用 GAE 的 LIKE 语句?

谢谢,

编辑:

我将使用 python 来抓取数据并将其插入数据存储区。然后我将使用Google Cloud Endpoints (Java JPA Querys) 查询这些数据。目前我无法搜索属性中的多个值并返回相应的实体,因为 GAE 数据存储中没有可用的 LIKE 语句。

4

1 回答 1

0

您可以使用重复属性。这是一个例子:

class User(ndb.Model):
    name = ndb.StringProperty(required=True)
    numbers = ndb.StringProperty(repeated=True)

# save a user
john_doe = User(name='John Doe',
                numbers=['0998234', '23443145', '2341234', '3425425'])
john_doe.put()

# query with a number '0998234'
query = User.query(User.numbers == '0998234')
for matched_user in query:
    # do something with matched_user
    ...
    ...
于 2013-03-20T05:06:59.400 回答