我想通过 AEM 6.1 创建包含以下信息的产品页面详细信息,例如名称、ID、类型、状态、数量、描述等。但对我来说似乎很难。
假设有一个产品列表表。一旦连续单击Read One链接,该项目的详细信息页面将绝对呈现。
你有什么想法 ?
我认为这实际上取决于您的产品详细信息(ID、类型、状态、数量、描述等)的存储方式。
一个好的解决方案是创建一个新的页面组件,该组件读取单击READ ONE按钮时传递的 ID http 参数作为新(产品详细信息)页面呈现的参数。所以所有按钮看起来像这样: www.mywebsite/products/productdetails?ID= x其中x是单击时给定行中产品的 ID。
您的新页面组件必须具有类似于以下的代码片段:
<div id="product-detail-component" data-sly-use.product="com.mypackage.models.ProductModel">
<ul>
<li>${product.ID} </li>
<li>${product.description}</li>
</ul>
</div>
然后你需要一个可以处理 http 参数的新 Sling Model 类
@Model({adaptables= Resource.class,SlingHttpServletRequest.class}) public class Product Model {
@PostConstruct
public void init()
{
/*
1.retrieve HTTP parameter which is ID
2.access resourceResolver/resource to locate node containing product properties relative to resource location
*/
}
}
这是一个非常基本且没有功能的示例,但我认为它可能会给您一个更好的方向。