Как передать несколько полей избыточной формы в одно поле бэкэнда - PullRequest
0 голосов
/ 22 марта 2019

В настоящее время, когда я отправляю избыточную форму и отправляю объект передачи данных в бэкэнд, есть бэкэнд-объект, который принимает данные и создает объект (я использую Spring Boot Framework в бэкэнде). Например, если моя форма содержит следующее:

Имя: _____________
Адрес: _____________
Возраст: _____________

У меня есть внутренний объект DTO Person, у которого есть следующие поля:

Строковое имя;

Строковый адрес;

int age;

Spring достаточно умен, чтобы, если я определю тело запроса как Персональный объект, он примет значения, введенные пользователем, и создаст объект, который я смогу использовать в моей конечной точке получения API. (Опять же, это всего лишь пример). В моей реальной проблеме я должен добавить новое поле с именем LocationCode. Как я и планировал, пользователи будут добавлять все свои коды местоположения в виде списка через запятую. Это только одно поле в пользовательском интерфейсе, помеченное как Код местоположения Таким образом, возможное значение может быть «loc1, location 2, myLocation», и соответствующий бэкэнд будет иметь переменную LocationCode для хранения этой строки.

Однако у меня есть новое требование для создания нового поля для каждого кода местоположения, который пользователь хочет ввести (внешний интерфейс полностью настроен). Я могу создать столько интерфейсов, сколько захочу, во внешнем интерфейсе, и у пользователя может быть

Код местоположения 1 _____________
Код местоположения 2 _____________
....
Код местоположения x _____________

Моя проблема в том, что мой бэкэнд не может иметь случайное количество полей. Есть ли какой-нибудь способ взять все эти пользовательские входы и объединить их в одну строку для передачи обратно в Spring Backend, чтобы я все еще мог получить строку, разделенную запятыми. Таким образом, у меня все еще может быть только одно поле в бэкэнде?

1 Ответ

0 голосов
/ 24 марта 2019

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

Надеюсь, это поможет!

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