Вот объяснение. У меня есть два объекта: Дом, Личность. В моей системе один человек может владеть несколькими домами, а один дом может иметь несколько владельцев. Поэтому я создаю таблицу (aka entity), называемую HouseOwnership. Я хочу, чтобы иметь возможность сделать два различных вида запросов к HouseOwnership:Как получить доступ к объектам от многих до многих отношений
- Пусть даны houseId, получить все это владельцы
- Учитывая PersonId, получить все дома принадлежат
Так HouseOwnership , я
@Entity
class HouseOwnership{
@Load
private Ref<House> houseRef;
@Load
private Ref<Person> personRef;
}
Как мне сделать мои запросы с OfyService.ofy()
?
я соблазн сделать
owners =OfyService.ofy().load().type(HouseOwnership.class).ancestor(house).list()
и
houses =OfyService.ofy().load().type(HouseOwnership.class).ancestor(person).list()
, но для этого я должен был бы сделать обе ссылки в @Parent
. Так я могу это сделать? Как сделать запросы?
Также у меня есть только идентификаторы, а не фактические объекты, поэтому мне пришлось бы создавать объекты из идентификаторов, которые я могу сделать. Но мне интересно, есть ли более простой способ?