Шаблон тимелист, как связать атрибут модели с <Insert></insert> полями? - PullRequest
1 голос
/ 25 марта 2020

Здравствуйте, пожалуйста, помогите мне решить проблему: В моем контроллере я отправляю две модели в модель: dateFrom и dateTo. Вот код контроллера:

@GetMapping(value = "/transports")
    public String transports(Model model) {
        LOGGER.debug("transports()");
        model.addAttribute("transports", this.transportService.findAll());
        model.addAttribute("fuelsMap", getFuelsMap(this.fuelService.findAll()));
        Date dateFrom = new Date();
        model.addAttribute("dateFrom", DateConverter.getDateByString("2020-01-02","yyyy-MM-dd"));
        model.addAttribute("dateTo", DateConverter.getDateByString("2020-01-30","yyyy-MM-dd"));
        return "transports";
    }

Мне нужно сделать ссылку, если этот атрибут ввести поля в моем шаблоне из тимьяна Цель состоит в том, чтобы сделать кнопку, с помощью которой href будет адресован: http://localhost: 8081 / транспорт / с / 2020-01-02 / до / 2020-01-30 где 2020-01 -02 это dateFrom, 2020-01-30 это dateTo.

теперь у меня есть этот код: это сделать меня URL со значениями, которые я отправляю из контроллера, я не понимаю, как получить значения из полей ввода

<label class="form-control-label" for="dateFrom">Date from</label>
                                <input class="form-control" name="dateFrom" id="dateFrom" type="text" th:attr="value=${#dates.format(dateFrom, 'yyyy-MM-dd')}">

                                <label class="form-control-label" for="field_dateTo">Date to</label>
                                <input class="form-control" name="dateTo" id="field_dateTo" type="text" th:attr="value=${#dates.format(dateTo, 'yyyy-MM-dd')}">

                                <div class="col-sm">
                                    <td class="text-right">
                                        <a href="transport.html"
                                           th:href="@{|/transports/from/${#dates.format(dateFrom, 'yyyy-MM-dd')}/to/${#dates.format(dateTo, 'yyyy-MM-dd')}|}"
                                           class="btn-sm btn-outline-secondary"
                                           title="Edit transport"
                                           data-toggle="tooltip"
                                           data-placement="top">
                                            <i class="fa fa-filter"></i>
                                            <span class="d-none d-md-inline">Search</span>
                                        </a>
                                    </td>

1 Ответ

1 голос
/ 25 марта 2020

См. Стандартный URL-адрес Thymeleaf для примеров по этому вопросу. Вы можете использовать заполнители, такие как {from} и {to} в своем URL, и заменить их датами. Например:

<a href="transport.html"
    th:href="@{/transports/from/{from}/to/{to}(from=${#dates.format(dateFrom, 'yyyy-MM-dd')}, to=${#dates.format(dateTo, 'yyyy-MM-dd')})}"
    class="btn-sm btn-outline-secondary"
    title="Edit transport"
    data-toggle="tooltip"
    data-placement="top">
    <i class="fa fa-filter"></i>
    <span class="d-none d-md-inline">Search</span>
</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...