#spring-mvc #jsp
Вопрос:
Итак, у меня есть этот проект с HTML-формой. Я скопировал его в файл InteliJ JSP, и теперь я борюсь с добавлением тегов Spring MVC в нужном месте. Все данные извлекаются из БД и передаются в JSP вместе с Моделью.
Я делаю это в первый раз, и я не знаю, должен ли этот div lt;div class="form--steps-container"gt;Krok lt;spangt;1lt;/spangt;/4lt;/divgt;
быть завернут в foreach lt;form:form method="post" action="/addDonation" modelAttribute="donation"gt; Kategoria: lt;form:checkboxes multiple="true" path="categories" items="${categories}" itemValue="id" itemLabel="name"/gt;
или что?
Как следует настроить это представление/где следует размещать теги Spring MVC для отображения любых категорий в БД?
JSP выглядит так:
lt;div class="form--steps-container"gt; lt;div class="form--steps-counter"gt;Krok lt;spangt;1lt;/spangt;/4lt;/divgt; lt;form action="form-confirmation.html" method="post"gt; lt;!-- STEP 1: class .active is switching steps --gt; lt;div data-step="1" class="active"gt; lt;h3gt;Zaznacz co chcesz oddać:lt;/h3gt; lt;div class="form-group form-group--checkbox"gt; lt;labelgt; lt;input type="checkbox" name="categories" value="clothes-to-use" /gt; lt;span class="checkbox"gt;lt;/spangt; lt;span class="description" gt;ubrania, które nadają się do ponownego użycialt;/spangt; lt;/labelgt; lt;/divgt; lt;div class="form-group form-group--checkbox"gt; lt;labelgt; lt;input type="checkbox" name="categories" value="clothes-useless" /gt; lt;span class="checkbox"gt;lt;/spangt; lt;span class="description"gt;ubrania, do wyrzucenialt;/spangt; lt;/labelgt; lt;/divgt; lt;div class="form-group form-group--checkbox"gt; lt;labelgt; lt;input type="checkbox" name="categories" value="toys" /gt; lt;span class="checkbox"gt;lt;/spangt; lt;span class="description"gt;zabawkilt;/spangt; lt;/labelgt; lt;/divgt; lt;div class="form-group form-group--checkbox"gt; lt;labelgt; lt;input type="checkbox" name="categories" value="books" /gt; lt;span class="checkbox"gt;lt;/spangt; lt;span class="description"gt;książkilt;/spangt; lt;/labelgt; lt;/divgt; lt;div class="form-group form-group--checkbox"gt; lt;labelgt; lt;input type="checkbox" name="categories" value="other" /gt; lt;span class="checkbox"gt;lt;/spangt; lt;span class="description"gt;innelt;/spangt; lt;/labelgt; lt;/divgt; lt;div class="form-group form-group--buttons"gt; lt;button type="button" class="btn next-step"gt;Dalejlt;/buttongt; lt;/divgt; lt;/divgt;
Контроллер:
@AllArgsConstructor @Controller public class DonationController { private final CategoryService categoryService; private final InstitutionService institutionService; private final DonationService donationService; @GetMapping("/donations") public String donationForm(Donation donation, Model model){ model.addAttribute("donations", new Donation()); return "form"; } @PostMapping("/addDonation") public String addDonation(@Valid Donation donation, BindingResult result){ if (result.hasErrors()) { return "redirect:/donations"; } donationService.save(donation); return "redirect:/donations"; } @ModelAttribute("categories") public Listlt;Categorygt; categories (){ return categoryService.findAll(); } @ModelAttribute("institutions") public Listlt;Institutiongt; institutions (){ return institutionService.findAll(); } }