为什么attribute
itemtype中定义的产品Product
不会显示在products
表格中,而是显示在productslp
表格中?
答案 0 :(得分:1)
PRODUCTSLP
是产品项的lang表,如果任何本地化属性在项中定义,那么这些数据将存储在LP表中。这个表的创建和加入将由hybris内部完成。
注意:您可以在相应的表中找到前缀为p_
的每个属性。
name
将存储在p_name
答案 1 :(得分:0)
* lp文件用于本地化。您的属性具有本地化选项。
答案 2 :(得分:0)
示例:p_name,p_description。在cores-item.xml文件中:
<itemtype code="Product"
extends="GenericItem"
jaloclass="de.hybris.platform.jalo.product.Product"
autocreate="true"
generate="true">
<deployment table="Products" typecode="1" propertytable="ProductProps"/>
<attributes>
<attribute autocreate="true" qualifier="code" type="java.lang.String" generate="true">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" initial="true" optional="false" unique="true"/>
<custom-properties>
<property name="hmcIndexField">
<value>"thefield"</value>
</property>
</custom-properties>
</attribute>
<attribute autocreate="true" qualifier="name" type="localized:java.lang.String">
<modifiers read="true" write="true" search="true" optional="true"/>
<persistence type="property"/>
<custom-properties>
<property name="hmcIndexField">
<value>"thefield"</value>
</property>
</custom-properties>
</attribute>
<attribute autocreate="true" qualifier="unit" type="Unit" generate="true">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" optional="true"/>
</attribute>
<attribute autocreate="true" qualifier="description" type="localized:java.lang.String">
<modifiers read="true" write="true" search="true" optional="true"/>
<persistence type="property">
<columntype database="oracle">
<value>CLOB</value>
</columntype>
<columntype database="sap">
<value>NCLOB</value>
</columntype>
<columntype>
<value>HYBRIS.LONG_STRING</value>
</columntype>
</persistence>
<custom-properties>
<property name="hmcIndexField">
<value>"thefield"</value>
</property>
</custom-properties>
</attribute>
<attribute autocreate="true" qualifier="thumbnail" type="Media">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" optional="true"/>
</attribute>
<attribute autocreate="true" qualifier="picture" type="Media">
<persistence type="property"/>
<modifiers read="true" write="true" search="true" optional="true"/>
</attribute>
</attributes>
<indexes>
<index name="Product_Code">
<key attribute="code"/>
</index>
</indexes>
</itemtype>
我看到属性已定义为obove.but但未在表格产品中看到它。注意:
<deployment table="Products"...>
是什么意思?
答案 3 :(得分:0)
用于项目类型的部署元素在db上保存表名。属性的类型属性中的本地化值需要按语言进行本地化。所以hybris会自动创建另一个带后缀lp的表。