我正在创建一个todo应用程序,其中索引页面上有TodoLists,当您单击TodoList时,您可以看到与其关联的所有待办事项。
e.g。当您在索引页面上单击TodoList“购物”时,您可以看到一个显示页面,其中包含衣服,食物等“待办事项”。
TodoListController.java
package com.teamlab.todolist.web;
import com.teamlab.todolist.domain.TodoList;
import com.teamlab.todolist.repository.TodoListRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@Controller
@RequestMapping("/todoLists")
public class TodoListController {
@Autowired
TodoListRepository todoListRepository;
@GetMapping
public String getAllTodoLists(Model model) {
List<TodoList> todoLists = todoListRepository.findAll();
model.addAttribute("todoLists", todoLists);
return "todoLists/index";
}
@GetMapping("{id}")
public String showAllTodos(@PathVariable Long id, Model model) {
TodoList todoList = todoListRepository.findOne(id);
model.addAttribute("todoList", todoList);
return "todoLists/show";
}
@PostMapping
public String createTodoList(@ModelAttribute TodoList todoList) {
todoListRepository.save(todoList);
return "redirect:/todoLists";
}
}
我的show.html页面中没有任何代码。
我之前曾在一个Rails应用程序上工作,在那里我有一个课程对象,在该课程对象中是课程对象。通过在视图模板中拉出相关视图,我能够显示与单个课程相关的所有课程,如下所示。
<% @course.lessons.each do |lesson| %>
<h2><%= link_to lesson.title, lesson_path(lesson.id) %></h2>
<% end %>
我不确定如何在Spring Boot中执行此操作,我也不确定这是否是解决此问题的正确方法。
答案 0 :(得分:0)
您可以使用th:each
在百里香中做同样的事情。您将使用model.addAttribute("todoLists", todoLists);
返回所有todoList。您可以使用
todoLists
处理数据
<table >
<tr th:each="todoList: ${todoLists}">
<td th:text="${todoList.name}"></td>
<td th:text="${todoList.priority}"></td>
<td th:text="${todoList.status}"></td>
</tr>
</table>