Как получить доступ к атрибуту модели тимилиста (в частности, к списку объектов), чтобы заполнить раскрывающийся список html? - PullRequest
0 голосов
/ 17 апреля 2020

Я проводил некоторые исследования и понимаю, как использовать определенные c объекты, если вы передали все вещи с помощью model.addAttribute ("имя объекта", объект); но я не знаю, как получить данные внутри html, если я только передал метод, который возвращает список с ним.

Итак, это будет мой контроллер для класса:

@Controller
public class randomNotification {

    @Autowired
    private randomService randomService;

    @Autowired
    private secondService secondService;

    @GetMapping("/random-notification.html")
    public String renderpage(Model model) {
        model.addAttribute("orgs", randomService.getOrgs());
        model.addAttribute("templates", secondService.getTemplates());
        return "random-notification";
    }
}

Функция randomService.getOrgs () будет возвращать коллекцию строк, таких как ["AB", "B C", "CD", "DE", "EF", "FG"] SecondService. getTemplates () также возвращает аналогичную коллекцию строк.

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

<div class="random-combobox">
    <th><label>Random </label></th>
    <th>
        <select class="random-cbox">
            <option value="">Select one..</option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
            <option value=""></option>
        </select>
    </th>
</div>

Я бы хотел заполнить каждый параметр одним элементом из списка, чтобы он был почти таким же, как

<div class="random-combobox">
    <th><label>Random </label></th>
    <th>
        <select class="random-cbox">
            <option value="">Select one..</option>
            <option value="<getOrgsOption1>">AB</option>
            <option value="<getOrgsOption2>">BC</option>
            <option value="<getOrgsOption3>">CD</option>
            <option value="<getOrgsOption4>">DE</option>
            <option value="<getOrgsOption5>">EF</option>
            <option value="<getOrgsOption6>">FG</option>
        </select>
    </th>
</div>

1 Ответ

1 голос
/ 17 апреля 2020

Что-то вроде этого сделает это

<select>
  <option th:each="org : ${orgs}" 
          th:value="${org}" 
          th:text="${org}"></option>
</select>
...