Фильтр запросов JDO AppEngine "свойство имеет предка"

У меня есть сущность вида "ContainableObject", которая имеет сущность вида "Container" в качестве одного из своих свойств.

class ContainableObject {

    @Persistent
    @Unowned
    private Container container;
    ...

"Контейнер" имеет родительский объект вида "Строительство"

Поскольку таблица фактически хранит ключ к контейнеру, который содержит его родительский ключ (т. Е. Контейнер свойств Key('Building',1,'Container',23) Есть ли способ написать запрос в соответствии с select * from ContainableObject where container has ancestor Key('Building', 1)

Я знаю, что мог бы дополнительно сохранить Building как прямое свойство ContainableObject, чтобы использовать его в фильтре запросов, но это единственный способ? Я почти уверен, что ответ - да, но я хотел бы получить какое-то подтверждение, так как это не совсем соединение, поскольку где-то там похоронен родительский ключ.

Примечание: ContainableObject находится в другой группе сущностей, чем Container, это не запрос предка, который реализация JDO в AppEngine не поддерживает AFAIK.

1 ответ

Решение

Невозможно получить указанный вами запрос. Вам нужно изменить структуру кода, чтобы достичь своей цели.

Надеюсь это поможет.

Другие вопросы по тегам