我有settings page
和他的控制器:
@RequestMapping(value = "/settings/password/change", method = RequestMethod.GET)
public String changePassword(Model model) {
return "account/changepassword";
}
在此页面上有
header
,其中包含myaccount
上的链接:<a class="link" th:href="${currentUser.nickname}"><li class="li">User profile</li></a>
但是,如果我打开标题上的
settings page
链接,则具有URL:localhost:8080/settings/password/change/profilename
。代替此,我需要类似localhost:8080/profilename
的URL。我该怎么办? 最佳答案
之所以得到/settings/password/change/profilename
,是因为th:href="${currentUser.nickname}"
创建了相对于当前路径的相对URL:<a href="profilename"/>
而是尝试使用以下Thymeleaf syntax来构建上下文相关的URL:
<a th:href="@{/{profilename}(profilename=${currentUser.nickname})}">link</a>