Spring Thymeleaf将用户路由到/users/{thisUser}/thisUsersCollectionO



我正在尝试将用户发送到包含其项目列表的特定页面。 到目前为止,我有些不成功。

我首先显示一个列出所有用户的页面,并带有超链接,我认为应该是他们各自的页面。

在我的模板中,我有这个:

<li th:each="key: ${users.keySet()}">
<span th:text="${users.get(key).getName()}"></span>
<a href="games.html" th:href="@{/{user}/games (user=${users.get(key).getName()}) }">View games</a></li>
</li>

例如,它当前确实路由到http://localhost:8080/Steve/games的 URL。

我遇到的困难是知道如何将其余部分联系在一起。

我有一个具有此映射的控制器,我认为当此 URL 为

@RequestMapping("/{users}/games")
@ResponseBody
public String userGames(@PathVariable final String username,
Model model){
.. List<Games> games= getGames(username)..
model.addAttribute("games", games);
return "games";
}

所以我想做的是显示"游戏"模板 html 页面,但显示我为该用户检索的游戏列表。 但是,我得到了标准的This application has no explicit mapping for /error, so you are seeing this as a fallback.错误,我无法弄清楚我哪里出错了。

我的"游戏"模板遵循与以前相同的模式,通过循环浏览列表:

<ol>
<li th:each="game : ${games}" th:text="${game.getName()}"></li>
</ol>

但不显示。

我的游戏类具有名称检索方法。 堆栈跟踪中没有引发异常

任何帮助将不胜感激,谢谢。

好的,总结一下我们在聊天中的谈话:您的控制器类缺少@Controller注释,因此根本没有调用您的映射方法。然后,确保控制器方法参数中的字符串与要传递的内容同名。

相关内容

最新更新