Использование хранилища данных Query() вы можете установить его предка с помощью метода setAncestor(), но это не гарантирует, что предок является прямым родителем.
Что вы можете сделать, чтобы обеспечить получение только прямых детей, выполнив операцию сравнения.
if(directChildEntity.getKey().getParent().equals(directParentEntity.getKey()))
{
// directChildEntity is a direct child of directParentEntity
}
Хитрость заключается в том, чтобы использовать метод Datastore Key's getParent(), так как он может опосредовать один шаг иерархии ключей между собой.
Я думаю, вы получили это перевернутое. Я думаю, он ищет запрос для прямых детей. Я думаю, что это должен быть X.all(). Filter ("parent =", y). – Albert
@Albert Спасибо –
Это будет работать только в том случае, если у вас есть свойство datastore, называемое родительским. –