2015-04-30 2 views
0

Я хочу найти список сотрудников между двумя датами, т.е. 1 jan 2014 до 31 Dec 2014, используя GAE ofy (objectify) для ветки. Как это сделать?ofy() appengine Дата поискового запроса

ulist=ofy().load().type(Employee.class).filter("branch", branch).filter("date >=", fromdate).filter("date <=", toDate).list(); 

Есть 2 поля ветвпа является автогенерируемым полем. -Для даты, которую я принял 2 Datebox, fromDate и toDate, и используя эти две даты, я должен запросить поле даты.

Вышеуказанный запрос не работает & не дает результатов при поиске между датой. Однако, если такая же дата вводится как с даты &, так и после ее работы.

Есть ли какие-либо проблемы с моей логикой или есть какой-либо другой метод, который я могу использовать для выяснения сотрудников филиала, соединенных между двумя датами?

+0

У вас есть индекс [настроенный] (https://cloud.google.com/appengine/docs/java/datastore/indexes) в вашем 'datastore-indexes.xml'? _ «Запросы с одним или несколькими фильтрами неравенства для свойства и одного или нескольких фильтров равенства для других свойств» _ – tx802

+0

Нет, я ничего не настроил в datastore-indexes.xml. –

+0

Можете ли вы рассказать мне, как настроить этот файл. –

ответ

0

Вам нужно будет указать пользовательский индекс для поддержки этого запроса, так как он объединяет несколько фильтров для разных свойств.

согласно documentation:

Другие формы запроса требуют, чтобы их показатели должны быть указаны в конфигурационном файле индекса, в том числе:

...

запросов с одним или несколькими неравенстве фильтры на свойстве и один или несколько фильтров равенства по другим свойствам

...

Ваш запрос имеет фильтр равенства (по branch) с двумя неравенствами (по date).

documentation Сообщает вам все, что вам нужно знать о настройке ваших пользовательских индексов.

+0

+0

Я настроил свой индекс, как показано выше, и он работает для меня. –

+0

В моем другом запросе. Я использовал статус IN Operator и один фильтр неравенства, т.е. date <= и один фильтр равенства, т.е. на Id. –

Смежные вопросы