我想知道broadleaf主页中Thymeleaf变量的位置。请帮助我解决问题。
以下是文件和locaion的屏幕截图:
我想知道该屏幕截图中#object和特色产品的位置。
提前致谢。
答案 0 :(得分:3)
在Thymeleaf中,*
和#object
都引用该上下文中的选定对象。 http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#expressions-on-selections-asterisk-syntax
在HeatClinic演示中,productListItem.html
模板在其他几个模板中被引用,其中有产品列表,例如特色产品组,类别和搜索。
例如,在search.html
:
<ul th:if="${products}" id="products" class="js-products group">
<li th:each="product : ${products}" th:object="${product}" th:include="catalog/partials/productListItem" class="js-productContainer productContainer"></li>
</ul>
您可以在productListItem
的多个嵌套实例中看到,这将是搜索中的每个产品。这些产品是通过调用BroadleafSearchController
从model.addAttribute(...)
设置在模型上的。
编辑:特别是在HeatClinic演示homepage.html
中:
<li th:if="${pageFields[product1]} and ${pageFields[product1].isActive()}" th:with="product=${pageFields[product1]}"
th:object="${pageFields[product1]}" th:include="catalog/partials/productListItem"
class="js-productContainer productContainer"></li>
pageFields
属性来自数据库表BLC_PAGE_FLD
,其中有一个带有键product1
的条目和一个值,该值是所需产品的产品ID(例如{演示中的{1}}。将此对象添加到模型的控制器是1
。