#google-app-engine #jdo #datanucleus
#google-app-engine #jdo #datanucleus
Вопрос:
У меня были две сущности User и friends в app engine JDO, в которых у пользователя был список друзей, поэтому я хочу, чтобы при выборе из таблицы User также извлекал из сущности friend список друзей, связанных только с этим пользователем …. как я могу выполнить это в app engine?
Комментарии:
1. Как выглядит ваша модель данных?
2. Это просто единственный пользователь, у которого должен быть набор друзей, поэтому мне нужен список пользователей объекта<Друзья> Я новичок в app engine, поэтому я не знаю, как управлять этим отношением .. как при выборе пользователя я могу получить всех его друзей из таблицы Friends
Ответ №1:
Отношения между объектами для python описаны здесь (я думаю, это почти то же самое для Java): http://code.google.com/appengine/articles/modeling.html
Кажется, вам нужно отношение «многие ко многим». Самый простой способ сделать это — иметь список свойств db.key в вашей пользовательской модели. Вы можете убедиться, что всякий раз, когда вы создаете новое соединение между друзьями, оба списка друзей обновляются.
В качестве альтернативы вы могли бы определить функцию, которая выполняет поиск в базе данных пользователей, у которых есть определенный пользовательский ключ в их списке друзей, используя запрос gql. Однако, ИМХО, это кажется несколько менее организованным, чем другой метод.