java—在SpringBoot中,如何将控制器模型变量传递给thymeleafth:src?

fcy6dtqo  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(289)

我在classpath目录下有一些静态图像文件,希望通过变量传递其中一个图像文件的相对路径。在thymeleaf上,目标是该变量将用作的src属性的路径 <img> .
控制器:

@Controller
public class SomeController {

    @RequestMapping("/some")
    public String someRequest(Model model) {
        String imageFilepath = someObject.getImageFilepath();
        // e.g., if imageFilepath = "/img/myPic.jpg", there can be a file "/img/myPic.jpg" under classpath:static
        model.addAttribute("myPath", imageFilepath);
        return "myThymeleafTemplate";
    }
}

thymeleaf模板:

<img th:src="@{<I want to use my variable 'myPath' here instead of a hard-coded string '/img/myPic.jpg'>}">

thymeleaf模板中th:src的尖括号(包括在内)中的上下文正是我要放置 imageFilepath 变量。这样的目标可行吗?

p4rjhz4m

p4rjhz4m1#

可以在不使用pass变量的情况下使用此变量:

<img th:src="@{/img/myPic.jpg}">

如果要传递变量,可以使用以下命令:

<img th:src="${myPath}">

相关问题