Почему программа показывает пустой результат? - PullRequest
1 голос
/ 03 мая 2019

Я создаю имя поля данных "csPreRequest" и добавляю в html-форму в качестве атрибута модели следующим образом.

@GetMapping("/add")
public String addNewCourse(Model model) {

    String csPreRequest = "";
    model.addAttribute("csPreRequest",csPreRequest);

    return  "admin/add-course-module";
}

Мне нужно заполнить это поле своими пользовательскими данными и вернуться в класс контроллера..Я попытался следующим образом:

@PostMapping("/save")
public String addNewCourse(@ModelAttribute("csPreRequest") String course) {

    System.out.println("\n Pre Reqest Courses : "+course+"\n\n");   

    return "redirect:/courses/add";
}

и мой HTML-код выглядит так:

      <input type="text" id="csPreRequest" th:field="${csPreRequest}">

моя программа работает нормально, но ничего не печатается для результата.что здесь пошло не так?

Ответы [ 2 ]

2 голосов
/ 03 мая 2019

В вашем GetMapping вы устанавливаете атрибут модели с переменной csPreRequest, которую вы инициализировали как пустую строку, а пустая строка - это то, что визуализируется.

Что вы должны сделать: 1. Когда вызывается POST /save, переданное значение должно быть сохранено.2. Когда вызывается GET /add, он должен получить сохраненное значение и установить его в модели.

0 голосов
/ 03 мая 2019

Вы должны попробовать @RequestParam при возврате обратно в контроллер:

@PostMapping("/save")
public String addNewCourse( @RequestParam("csPreRequest") String course ) {

    System.out.println("\n Pre Reqest Courses : "+course+"\n\n");   

    return "redirect:/courses/add";

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