Google App Engine: Съхраняване на данни и заявки за тях

Чудя се кой е най-добрият начин за съхраняване на данни за моята ситуация. Искам да съхраня списък със свойства, като телефонни номера, за един човек. Например:

име: John Doe номера: 0998234, 23443145, 2341234, 3425425

Проблемът е, като имам число, как мога да търся в свойството 'numbers', за да намеря John Doe. От това, което прочетох, няма оператор LIKE, използващ GAE?

Благодаря,

РЕДАКТИРАНЕ:

Ще използвам python, за да изтрия данни и да ги вмъкна в хранилище за данни. След това ще направя заявка за тези данни с помощта на Google Cloud Endpoints (Java JPA Querys ). В момента не мога да търся в множество стойности в свойство и да върна съответния обект, тъй като в хранилището за данни на GAE няма наличен оператор LIKE.


person derpyderp    schedule 20.03.2013    source източник


Отговори (1)


Можете да използвате повтарящото се свойство. Ето един пример:

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
    ...
    ...
person Takashi Matsuo    schedule 20.03.2013
comment
Благодаря за отговора. Може ли тази заявка да се направи и чрез JPA? Пиша облачна крайна точка и ще използвам заявка с entitymanager. - person derpyderp; 20.03.2013
comment
Объркан съм. Оригиналният въпрос има маркер python, така че предположих, че използвате python. Моля, премахнете етикета python и добавете тази информация (използвате JPA) към първоначалния въпрос. - person Takashi Matsuo; 20.03.2013
comment
Съжалявам за объркването. Трябваше да се обясня по-добре, добавих актуализация по-горе, за да обясня какво искам да направя. Благодаря. - person derpyderp; 20.03.2013