Primefaces lazy datatable: как получить видимый список - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть lazydatatable, показывающий тысячи автомобилей.У меня будет кнопка покупки в верхней части страницы.По сути, я хочу, чтобы пользователь покупал все автомобили, отображаемые в списке, когда я нажимал на кнопку «Купить».Я изо всех сил пытаюсь получить список, ограниченный этими автомобилями.

Как я могу это сделать?

xhtml

 <p:dataTable var="car" value="#{carView.listCars}" paginator="true" rows="10" paginatorTemplate="{RowsPerPageDropdown} {FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink}
 {LastPageLink}" rowsPerPageTemplate="5,10,15" selectionMode="single" selection="#{carView.selectedCar}" id="carTable" lazy="true">
     <p:column headerText="Year">
     <h:outputText value="#{car.year}" />
     </p:column>

     <p:column headerText="Brand">
         <h:outputText value="#{car.brand}" />
     </p:column>

CarService

public void buy{

...
}

CarView

public void init(){
    LazyCarDataModel cars= restService.getCars();
}

1 Ответ

0 голосов
/ 23 ноября 2018

Используя p:datatable в ленивом режиме, вы предоставляете данные для «видимого» списка с помощью метода load в LazyDataModel.Так что, если вы так или иначе храните этот список на сервере (например, храните его в @Viewscoped bean`), он становится доступен, когда вы нажимаете «купить».

Другим способом является поддержка множественного выбора и наличие переключателя «выбрать все» в верхней части выбора.А затем использовать выбранные файлы на стороне сервера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...