我想展示一个表单,它有一个预先填充的对象列表,每个对象属性作为一个字段,使用thymeleaf模板从我的数据库中检索(然后用户可以编辑)。我知道我会用 th:each 完成对返回列表中每个对象的循环,并创建预填充的表单字段。但是,如果没有从数据库中检索到任何项,我仍然希望显示与该对象属性相对应的窗体,只显示预填充值为空的窗体。我将如何实现这一点?我在文件中找不到细节。
th:each
ecbunoof1#
我假设您在控制器中执行类似操作:
@GetMapping public String showListOfObjectsForm(Model model) { List<MyObject> listOfObjects = service.get... model.addAttribute( "myList", listOfObjects ); return "form" }
你可以检查一下 listOfObjects 并在列表中添加一个“虚拟”对象:
listOfObjects
@GetMapping public String showListOfObjectsForm(Model model) { List<MyObject> listOfObjects = service.get... if( listOfObjects.isEmpty() ) { listOfObjects.add( new MyObject() ); } model.addAttribute( "myList", listOfObjects ); return "form" }
1条答案
按热度按时间ecbunoof1#
我假设您在控制器中执行类似操作:
你可以检查一下
listOfObjects
并在列表中添加一个“虚拟”对象: