Динамические столбцы в liferay-ui:search-Container?

Я пробовал liferay-ui:search-container извлекать и отображать записи таблицы базы данных в пользовательском интерфейсе в формате таблицы/сетки. Используя liferay-ui:search-container, я получаю вывод, как показано ниже,

введите здесь описание изображения

Я извлекаю записи таблицы USER_ на снимке экрана выше.

Проблема:

Я хотел сделать столбцы сетки динамическими, например, я хотел, чтобы конечный пользователь мог удалить ненужные столбцы и добавить нужные столбцы в соответствующую сетку/таблицу.

ПРИМЕР:

На приведенном выше снимке экрана следующие столбцы отображаются в сетке.

First Name, Last Name, Screen Name, Job Title, Organization, User Groups

Теперь, если пользователь хочет удалить Job Title и хочет добавить Greetings and Mail Address столбцов в пользовательском интерфейсе с событиями кликов, не касаясь/изменяя код.

Как я могу реализовать эту функцию?

Примечание.

Мне нужно реализовать эту функцию для пользовательских моделей.

Запросы:

1) Существуют ли какие-либо API/методы для реализации/включения этой функции?

2) Если нет, как я могу выполнить шаги? Любые предложения или шаги для достижения этой задачи?


person Prasad    schedule 02.07.2015    source источник


Ответы (1)


Этого можно добиться, добавив в портлет страницу конфигурации.

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

Позже при отображении контейнера поиска вы можете получить настройки портлета и отобразить только те столбцы, которые были выбраны в форме конфигурации.

Вот ссылка о том, как разработать конфигурацию портлета с использованием настроек портлета: Реализация настраиваемых параметров портлета

person Dipti Ranparia    schedule 05.07.2015
comment
Как получить список имен столбцов в список? Есть ли способ получить имена столбцов любой таблицы? - person Prasad; 07.07.2015
comment
проверьте файл {Entity}ModelImpl.java на наличие общедоступного статического финального объекта[][] TABLE_COLUMNS = {...}; это даст вам список столбцов и типов. также попробуйте ModelHintsUtil.getFieldEl() , я никогда не уставал от этого. - person Dipti Ranparia; 07.07.2015
comment
Допустим, мне нужно получить все столбцы таблицы USER_. Как я могу получить все столбцы таблицы USER_ - person Prasad; 07.07.2015
comment
Попробую и ваше предложение - person Prasad; 07.07.2015
comment
Я попробовал ваше предложение и остановился на одной проблеме, о которой сообщается как о другом вопросе по следующей ссылке, stackoverflow.com/questions/31408211/ Пожалуйста, предоставьте мне какое-нибудь предложение/решение - person Prasad; 14.07.2015