Hen*_*ine 5 attributes overriding unique hybris
在我的 hybris 应用程序中,我想覆盖我的 CustomerReview 项目类型,以便其属性product和user不再是唯一的。
这些属性的唯一性在 CustomerReview 和 Product/User 之间的关系中声明。我尝试将关系声明再次添加到我的extname-items.xml 文件并设置适当的 unique="false" 属性,如下所示:
<relation generate="false" localized="false" code="ReviewToUserRel" autocreate="false">
<sourceElement type="User" qualifier="user" cardinality="one">
<modifiers write="false" initial="true" optional="false" unique="false" />
</sourceElement>
<targetElement type="CustomerReview" qualifier="customerReviews" cardinality="many">
<modifiers write="false" initial="true" />
</targetElement>
</relation>
Run Code Online (Sandbox Code Playgroud)
但这并不能解决问题。在我重建应用程序并更新运行系统后,CustomerReview的用户和产品属性仍然是唯一的属性。
那么这个问题的最佳解决方案是什么?
确实,重写关系不会覆盖它。
解决此问题的另一种方法是向类型添加属性并将其设置为唯一。例如emailAddress:
<itemtype code="CustomerReview" autocreate="false" generate="false">
<attributes>
<attribute type="java.lang.String" qualifier="email">
<persistence type="property" />
<modifiers read="true" write="true" unique="true"/>
</attribute>
</attributes>
</itemtype>
Run Code Online (Sandbox Code Playgroud)
然后,您可以得到同一用户对同一产品的多个评论,只要它们emailAddress不同即可。
| 归档时间: |
|
| 查看次数: |
5039 次 |
| 最近记录: |