Привет всем и спасибо, что прочитали мой выпуск.
Я программирую приложение, используя Spring MVC и Thymeleaf, и у меня возникла следующая проблема.
Я перебираю список объектов и отображаю под ними кнопку, и моя цель - обновить базу данных, получив значение одного атрибута от конкретного итерированного объекта, но полученный атрибут пуст, и он ' d не должно быть пустым.
Мой класс контроллеров:
@Controller
@RequestMapping("/mostrar_usuarios")
public class MostrarUsuariosController {
private final UsuarioService usuarioService;
@Autowired
public MostrarUsuariosController(UsuarioService usuarioService) {
this.usuarioService = usuarioService;
}
@RequestMapping(method = RequestMethod.GET)
public String mostrarVista(ModelMap model, HttpSession session) {
UsuarioVO u = (UsuarioVO) session.getAttribute("usuarioActivo");
if (u != null) {
ArrayList<UsuarioVO> listaUsuarios = (ArrayList<UsuarioVO>) this.usuarioService.retrieveAll();
model.addAttribute("usuarios", listaUsuarios);
return "mostrar_usuarios";
} else {
return "redirect:/paginaprincipal";
}
}
@RequestMapping(method = RequestMethod.POST)
public String registrarse(@ModelAttribute("usuario") UsuarioVO usuario, ModelMap model, HttpSession session) {
UsuarioVO u = (UsuarioVO) session.getAttribute("usuarioActivo");
if (u != null) {
u.getSeguidos().add(usuario); // usuario comes empty
this.usuarioService.update(u);
return "mostrar_usuarios";
} else {
return "redirect:/paginaprincipal";
}
}
}
Вот мой код html + thymeleaf:
<div class="media-container-row" th:each="usuario: ${usuarios}">
<div class="title col-12 col-md-8">
<br></br>
<hr />
<br></br>
<h5 class="align-center pb-3 mbr-fonts-style display-2"
th:text="${usuario.nombre + ' @' + usuario.arroba}"
id="tamanioTexto"></h5>
<form class="align-center pb-3 mbr-fonts-style display-2" action="#" method="POST" th:object="${usuario}" id="tamanioPie">
<button id="boton" type="submit">Seguir</button>
</form>
<br></br>
<hr />
<br></br>
</div>
</div>
Все работает нормально, кроме th:object="${usuario}" #style it as code
, с тем, что я хочу получить конкретный повторяющийся объект, в зависимости от кнопки, нажатой в контроллере.