Много раз мне нужно только значение атрибута одного объекта. Поэтому нет необходимости получать всю Entity с помощью key.get().Google Datastore, получить конкретные свойства объекта
Я знаю, что проекционные запросы возвращают неполные объекты с указанными вами атрибутами. Значения указаны в индексе, поэтому нет необходимости получать объект из хранилища данных.
Мне интересно, если задан ключ, есть способ получить частичную сущность, получая информацию из индекса вместо хранилища данных, потому что я предполагаю, что получение из индекса будет быстрее, чем из хранилища данных.
Например что-то вроде: статей = some_key.get (проекция = [Article.title]) печати article.title
Существует способ сделать это? Это может быть новая функция?
EDIT: Кажется, что нет способа. Существующие индексы упорядочиваются по свойству. Единственный способ - создать способ создания индекса, упорядоченного по ключу, с свойством в одном столбце, но, похоже, не очень полезно иметь эти дополнительные индексы.
Вы правы, что нет способа. –
Благодарим за подтверждение.Попытавшись немного, я мог бы добавить поле свойств, сохраняющее значение ключа текущего объекта, поэтому оно сохраняется в индексе и упорядочивается по ключу, но я думаю, что это не стоит. В этом случае индекс будет выглядеть следующим образом: | key_property | название | __key__ | –