如何从Backoffice删除OOTB属性

时间:2019-10-17 09:49:24

标签: hybris

我需要从Backoffice中删除“开箱即用”属性,这些属性是在multipe OOTB扩展中定义的。

1 个答案:

答案 0 :(得分:0)

我不确定是要在后台隐藏这些属性还是要从数据库中完全删除这些属性。

如果您只想隐藏它们,您可以在items.xml中为这些属性添加以下自定义属性:

<custom-properties>
  <property name="hiddenForUI">
      <value>Boolean.TRUE</value>
  </property>
</custom-properties> 

请查看core-items.xml中的示例。

或者,您可以导入以下ImpEx:

INSERT_UPDATE AttributeDescriptor;qualifier[unique=true];enclosingType(code)[unique=true];hiddenForUI 
;the-attribute-to-be-hidden;the-itemtype-to-which-the-attribute-belongs;TRUE

如果希望将它们从数据库中完全删除,则可以执行以下操作:

  1. 识别定义了扩展名的扩展名,如果不需要这些扩展名,只需将它们从localextensions.xml中删除
  2. 从它们各自的item.xml中删除这些属性

然后,您需要执行ant clean all updatesystem。但是,与这些属性相对应的列仍将保留在数据库中,因为系统更新不会从数据库中删除/删除任何表/列(您只能添加新表/列以及添加/更新/删除数据< / strong>(使用系统更新)。在大多数情况下,也不可能进行系统初始化。因此,您只剩下一个选择,那就是使用SQL查询从数据库中删除列。