Привязка списка объектов от вида тимелиста к контроллеру - PullRequest
0 голосов
/ 09 октября 2019

У меня есть объект «InfoItem», который отображается в виде. В Controller AI добавляю модель и отображаю в View A.

Object

public class InfoItem {

        private boolean level = false;
        private InfoDtc infoDtc = null;
        private String name = "";
    }

Wrapper Class для отправки списка объектов и полученияпосле редактирования

    public class InfoItemCreationDto {

           private List<InfoItem> infoItemList = new ArrayList<>();
            public void addInfo(InfoItem infoItem) {
                this.infoItemList.add(infoItem);
            }
   // getters and setters
    }

Код контроллера

@GetMapping("info")
public String getInfo(Model model, @PathVariable Integer item) {
// code to get response from backend
       for (InfoItem ii : response) {
            infoItemCreationDto.addInfo(ii);
        }

        model.addAttribute("form", infoItemCreationDto);   
        model.addAttribute("infoItemList", response);
return "A";
}

В Просмотр A этот объект отображается в форме, тогда это необходимоОтредактировано и сохранено в БД.

<form action="#" th:action="@{/uploadInfo}" th:object="${forms}" method="post">
<div class="form-group">
    <div class="list-group"
        th:each="info , itemStat :${infoItemList}">

        <div th:if="${info.isLevel()}">
            <div class="card-header py-3">
                <h6 class="m-0 font-weight-bold text-primary">
                    <span th:text="${info.getName()}"> Title </span>
                </h6>
            </div>
        </div>
                        <div th:if="${info.getInfoDtc().getInfoType()} eq 'C'" >
                            <div class="form-group">
                                <select class="form-control selectpicker" th:name="|{infoItemList[__${itemStat.index}__].infoDtc.infoType}|">
                                    <option value="1">Cat</option>
                                    <option value="2">dog</option>
                                </select>
                            </div>
                        </div>
<input type="submit" value="Submit"
                        class="btn btn-info"/>
                        </div>
                </form>

Я прошел по ссылке https://www.baeldung.com/thymeleaf-list

, они используют класс-обертку для отправки списка объектов и получения. Я тоже пытаюсь это использовать, но он не работает

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