Как отсортировать ответы в Objectify?
В настоящее время я создаю приложение для развертывания в GAE, используя Objectify 3.1. Я получаю странные результаты при попытке выполнить запрос с предложением order().
Мой домен:
public class InvoiceLineItem
{
private int units;
private BigDecimal unitCost;
private BigDecimal extendedCost;
private String description;
@Parent Key<Invoice> invoice;
}
Я пытаюсь собрать все InvoiceLineItems, связанные с данным счетом, используя следующее:
ofy ().query (InvoiceLineItem.class).ancestor (invoiceKey).list ( );
В моем тестовом примере это работает отлично, возвращая 2 строки, как ожидалось.
Однако, когда я пытаюсь добавить порядок сортировки к вышеуказанному запросу, например:
ofy ().query (InvoiceLineItem.class).ancestor (invoiceKey).order ("+description").list ();
Я всегда получаю 0 результатов. Я попытался изменить направление заказа, поле, в котором он упорядочивается, расположение предложения order() в запросе, все это никак не влияет. Может ли кто-нибудь увидеть что-то, что я здесь делаю неправильно?
Спасибо...
Ответы
Ответ 1
Здесь есть несколько потенциальных проблем:
- Поле описания должно быть проиндексировано
- Поле описания должно быть меньше 500 символов, поскольку более 500 символов преобразуются в
Text
, который не индексируется
- Избавьтесь от+. Это либо .order( "description" ), либо .order( "- description" ).