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

  1. Select
  2. Dropdown
  3. Select (enum)
  4. Relselect

Элементы на примере редактора веб-приложений:

Элементы в редакторе веб приложений

Select

Этот элемент предназначен для выбора из статического списка вариантов, которые задаются в редакторе.

После переноса элемента select на канвас, появится всплывающее окно, где можно определить будет ли select принимать одно значение или несколько.

Чтобы добавить и редактировать опции для выбора, нужно нажать на элемент и перейти во вкладку Option.

Dropdown похож на select, но отличается тем, что не сохраняет выбранное значение. Обычно Dropdown запускает какой-либо бизнес-процесс при клике на одну из опций.

Чтобы добавить и редактировать опции для выбора, нужно нажать на элемент и перейти во вкладку Option.

Dropdown option редактор

Select (enum)

Select (enum) предназначен для выбора значения из enum. При создании этого элемента появится окно, где нужно выбрать источник данных (один из существующих enum).

Select enum

Relselect

Relselect используется для выбора значений из записей в базе данных. При создании нужно выбрать источник данных из списка моделей. После выбора источника появится возможность выбрать поле для отображения.

Для примера создадим RelSelect с источником данных User и полем Login.

Set RelSelect

Чтобы RelSelect работал, нужно передать в него данные с помощью БП.

Бизнес-процесс должен получать данные с помощью блока GET и передавать их в RelSelect с помощью блока RelSelect Update Properties.

Для примера загрузим в RelSelect всех администраторов приложения. Для этого используется блок Server Request GET /user. Задается значение по умолчанию для входного поля groups равное admin. Так в выходном поле data мы получим только пользователей из группы Admin. Эти данные нужно передать в RelSelect Update Properties.

Для того, чтобы в RelSelect Update Properties появилось поле для данных, нужно указать Component ID.

Настройка БП для RelSelect

Теперь в RelSelect будут отображаться логины всех администраторов приложения. Выбор, сделанный пользователем, можно в дальнейшем использовать в БП. Для этого есть поле selected, в котором хранятся выбранные значения.

Представим, что есть модель данных task, связанная с пользователями. С помощью RelSelect можно отобразить только те задачи, которые связаны с выбранным пользователем.

Добавим таблицу task на страницу, и вернемся в БП, который настроен для RelSelect. В нем нужно создать еще один БП на триггер onChange, который будет обновлять данные в таблице в соответствии с выбором в RelSelect.

В нем с помощью блока RelSelect Get Properties получаем выбранного пользователя. Раскрыть его можно с помощью Expand User, ID которого нужно передать в блок Server Request GET /task, затем передать полученные данные в блок Table Update Data.

Обновление таблицы с помощью RelSelect.

Теперь при выборе пользователя в RelSelect в таблице task будут отображаться записи связанные с выбранным пользователем.

Was this article helpful?

AppMaster.io 101 Полный курс

10 модулей
2 недели

Не знаете с чего начать? Начните с нашего ускоренного курса для начинающих и изучите AppMaster от А до Я.

Начать обучение
Development it’s so easy with AppMaster!

Остались вопросы?

Наши эксперты с радостью ответят на все ваши вопросы о платформе AppMaster и помогут вам в создании приложений.

headphones

Служба поддержки

Поделитесь своей проблемой с нашими специалистами.

message

Комьюнити AppMaster

Обсудите вопросы с другими пользователями в нашем чате.

Присоединиться