首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring + Thymeleaf不能正确传递参数

Spring + Thymeleaf不能正确传递参数
EN

Stack Overflow用户
提问于 2017-07-31 13:52:53
回答 1查看 328关注 0票数 0

我不能正确地传递参数。我知道错误在HTML中。

错误出现在代码${vo.news.likeCount}${vo.news.link}等中。

但我不知道怎么用正确的方法。谢谢。

这是一个胸腺细胞的模板:

代码语言:javascript
复制
<div class="posts">
  <div th:each="vo : ${vos}">
    <div class="post">
      <div class="votebar">
        <button class="click-like up" aria-pressed="false" title="赞同"><i class="vote-arrow"></i>
          <span class="count"><span th:text="${vo.news.likeCount}"></span></span>
        </button>
        <button class="click-dislike down" aria-pressed="true" title="反对"><i class="vote-arrow"></i>
        </button>
      </div>
      <div class="content" data-url="${vo.news.link}">
        <div>
          <img class="content-img" src="${vo.news.image}" alt="">
        </div>
      </div>
    </div>
  </div>
</div>

这是ViewObject

代码语言:javascript
复制
public class ViewObject {

    private Map<String, Object> obj = new HashMap<String, Object>();

    public void set(String key, Object value) {
        obj.put(key, value);
    }

    public Object get(String key) {
        return obj.get(key);
    }
}

这是控制器方法:

代码语言:javascript
复制
@RequestMapping(path = {"/", "/index"}, method = {RequestMethod.GET, RequestMethod.POST})
public String index(Model model) {
    List<News> newsList = newsService.getLatesNews(0, 0, 10);
    List<ViewObject> vos = new ArrayList<>();

    for (News news : newsList) {
        ViewObject vo = new ViewObject();
        vo.set("news", news);
        vo.set("user", userService.getUser(news.getUserId()));
        vos.add(vo);
    }

    model.addAttribute("vos", vos);
    return "home.html";
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-31 21:17:49

表达式vo.news.likeCount表示vo.getNews().getLikeCount()ViewObject没有getNews()方法。您需要构造表达式,使其看起来与java中的表达式相同。

代码语言:javascript
复制
<span th:text="${vo.get('news').likeCount}"></span>

<img class="content-img" src="${vo.get('news').image}" alt="">

<div class="content" data-url="${vo.get('news').link}">

等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45417824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档