我正在使用 thymeleaf 学习 spring boot。我已将用户对象的个人资料图像存储在文件系统中,只有图像的 URL 是持久保存在数据库中的用户对象的一部分。
我已将name
和dpurl
添加到模型中,以便从模板访问它。
@GetMapping("/profile")
public String profileController(@AuthenticationPrincipal User activeUser, Model model) {
model.addAttribute("name", activeUser.getName());
model.addAttribute("dpurl", activeUser.getDpURL());
return "profile";
}
我可以使用 th:text="${name}"
从模板访问 name
但是,我无法像这样使用 thymeleaf 指定背景图像
<div id="dp-container" th:style="'background-image: url(' + @̣{dpurl} + ');'" >
这会导致错误
无法解析为表达式:“'background-image: url(' + @̣{dpurl} + ');'”
更新
改成这样
<div id="dp-container" th:style="'background-image:url(' + @{dpurl} + ');'">
现在我没有收到任何错误,但背景图像仍然没有显示。
如何使用 Thymeleaf 指定背景图像?
最佳答案
它可能需要看起来像这样:
<div id="dp-container" th:style="'background-image:url(' + ${dpurl} + ');'">
但这取决于dpurl
包含的内容。您真的需要使用 @{...}
吗?那么你应该使用@{${dpurl}}
。
要调试它,您应该查看源代码。它也会揭示你的表情正在解决什么问题。
关于spring - 如何用 Thymeleaf 指定背景图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51365711/