0

假设 pimcore 5 数据对象的结构如下:

Products (folder)
    Category A (custom class 'category')
        Category AB (Custom class 'category')
            Product A (Custom class 'product')
            ...
    Category B (custom class 'category')
        Product B (Custom class 'product')
Settings (folder)
    ...

默认情况下,管理员可以在 pimcore 的数据对象区域中的任何位置添加任何类,因此理论上他可以在“设置”文件夹下添加产品,或者在产品下添加类别,但我想阻止这种情况,所以他只可以在产品文件夹或另一个“类别”中添加“类别”,因此他只能在“类别”父级中添加“产品”。

有没有办法为 pimcore 5 数据对象配置这样一个“允许的子类”系统?

编辑

对于“一种配置方式”,我并不一定是指管理界面提供的某些解决方案,需要 php 编码的解决方案也可以。

4

1 回答 1

2

最简单的方法是使用自定义视图(https://pimcore.com/docs/5.0.x/Objects/Object_Classes/Class_Settings/Custom_Views.html)。不幸的是,这需要设置和产品文件夹的单独面板。

如果您希望在单个对象面板中实现此行为,则必须在 PHP 和 ExtJS 中编写代码。您需要覆盖 web/pimcore/static6/js/pimcore/object/tree.js 中的 pimcore.object.tree.onTreeNodeContextmenu 方法。

于 2017-11-08T14:03:44.807 回答