代码之家  ›  专栏  ›  技术社区  ›  Hugo Valenza M

如何从thymeleaf中获取元组值(querydsl)?

  •  0
  • Hugo Valenza M  · 技术社区  · 7 年前

    i don'i know i how i get the tuple value of queryDSL since thymeleaf

    自后端以来,我发送此值:

    List<Tuple> products = productServiceImpl.findProductByFiltersPaginate(null, 0, 1, null);
    
    ModelAndView view = new ModelAndView();
            view.addObject("products",products);
            view.setViewName(ViewConst.MAIN_LAYOUT);
            view.addObject("view","catalog");
            return view;
    

    但是在前面(百里叶列夫),我不知道如何得到这些值。我的代码如下:

    <div th:each="product :${products}">
                 <h2 th:text="${product}"></h2>
            </div>
        </div>
    

    但我不知道变量名称后面是什么。 我已经尝试过以下方法: ${product.name},${product['name']},${product[0]} 但它们都不起作用。

    如果我只放这个${product},它会以这种格式返回我的每个值

    [39, Moto KTM DUKE, /images/products/product39/m_39_0.jpg]
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Metroids    7 年前

    根据您的回复,我认为这些方法可能有效:

    product.get(0, Product.class)

    <!-- Note, you have to replace your.package.Product with the actual package -->
    <div th:each="product :${products}" th:with="class=${T(your.package.Product).class}">
      <h2 th:text="${product.get(0, class)}" />
    </div>
    

    product.get(qProduct.title)

    <!-- For this, you need to add qProduct on the model -->
    <div th:each="product :${products}">
      <h2 th:text="${product.get(qProduct.title)}" />
    </div>
    

    您也可以使用toArray(),但我不完全确定结果如何:

    <div th:each="product :${products}" th:with="data=${product.toArray()}">
      <h2 th:text="${data[0]}" />
    </div>