Необходимо отобразить определенный индекс / местоположение возвращаемых результатов из запроса MongoDB

0

Используя AngularJS и MognoDB, можно запросить базу данных, вернуть результаты, а затем отобразить результаты в угловом виде, НО В СПЕЦИФИЧЕСКОМ ИНДЕКСЕ/МЕСТЕ ВОЗВРАЩЕННЫХ ДАННЫХ?

ПРИМЕЧАНИЕ: ОБЪЕКТЫ ВОЗВРАЩАЮТСЯ В МАССИВ...

Например:

Пользователь нажимает тег <a> с помощью ui-sref, ведущего в View2 из View1. URL запускает запрос в MongoDB, возвращая 500 результатов. В View2 мне нужно отобразить результаты в формате разбивки на страницы (уже завершено), но иметь СТАРТ с разбивкой по страницам с конкретным результатом, в котором находился тег <a>.

ПРОБЛЕМА: результаты возвращаются, а View2 отображается, но результаты START в начале возвращаемого списка, а не на конкретный результат, который был нажат из View1.

<div class="col m3" dir-paginate="material in graniteStuff | itemsPerPage: 20">
          <a ui-sref="material({id: material.material_category_id})"><div class="card">
            <div class="card-image small">
                <img ng-src="http://...">
            </div>
            <div class="card-content" id="color">
              <p>{{ material.material_name }}</p>
              <p>{{ material.material_country_of_origin }}</p> 
            </div>
            </div>
          </a>
        </div>

Я передаю идентификатор в качестве параметра через ui-sref для запроса, но мне нужно также передать имя материала в качестве параметра или как-то НАЧАТЬ возвращенные результаты в этом конкретном месте.

Теги:
pagination

1 ответ

0

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

Затем вы можете отобразить элементы подкачки, установить "активную" пейджерную кнопку и отображать только результаты для этой страницы.

.skip(pageindex * pagesize).limit(pagesize) // pageindex is 0 based
  • 0
    Мне нужно вернуть все результаты. Но когда результаты возвращаются и отображаются, мне нужен конкретный результат, скажем, 25 из 500, чтобы отобразить его, хотя я все еще могу разбивать на страницы между остальными ... Я думаю, что это проблема параметров, а Angular просто начинает нумерацию страниц с первого результата, а не с «25», например.
  • 0
    Да, обычно вы запрашиваете каждую страницу результатов. Нет необходимости получать каждую страницу, если они не будут отображаться. Это уменьшит размер ответа и ускорит весь процесс. Если по какой-то причине вам все результаты нужны одновременно, вы можете получить определенное подмножество массива с помощью цикла for: stackoverflow.com/questions/16622850/…

Ещё вопросы

Сообщество Overcoder
Наверх
Меню