Pimcore“导入定义”如何将对象重定位到相关文件夹

时间:2019-01-10 09:26:33

标签: pimcore pimcore-v5

我已经使用“ 导入定义”捆绑包来导入csv并创建数据对象。 (https://github.com/w-vision/ImportDefinitions

现在,我需要将导入的数据对象放入相关文件夹。我需要自动执行。

例如-

  1. 导入CSV的第一行
  2. 检查CSV第一行“类别”列的值
  3. 根据列值需要移到相关文件夹中。

设置对象路径“ /products/%Text(mycolumn1);/%Text(mycolumn2);”不能满足我的要求。

我的csv带有类别代码而非全名。 我需要做一些映射。

例如:- csv列类别值为- OFH 我的数据对象文件夹名称为办公家具五金

我需要将两者匹配并放入正确的文件夹中。

使用“ 导入定义”执行此操作的最佳方法是什么?

如果最好的方式是“ 口译员”,请告诉我该怎么做?

谢谢。

1 个答案:

答案 0 :(得分:0)

关于Pimcore的文档很少,但是我已经使用自定义解释器解决了我的问题。 这是我的解决方案-

拳头安装导入定义-

https://github.com/w-vision/ImportDefinitions

(它将安装到-/var/www/html/example2.loc/vendor/w-vision/import-definitions/src/ImportDefinitionsBundle/

composer require w-vision/import-definitions:^2.0-dev

bin/console pimcore:bundle:enable ImportDefinitionsBundle

bin/console pimcore:bundle:install ImportDefinitionsBundle

添加新的自定义解释器

将“ categorymap.js ”添加到 /var/www/html/example2.loc/vendor/w-vision/import-definitions/src/ImportDefinitionsBundle/Resources/public/pimcore/js/interpreters/categorymap.js

将“ CategoryMap.php ”添加到 /var/www/html/example2.loc/vendor/w-vision/import-definitions/src/ImportDefinitionsBundle/Interpreter/CategoryMap.php

将“ CategoryMapInterpreterType.php ”添加到 /var/www/html/example2.loc/vendor/w-vision/import-definitions/src/ImportDefinitionsBundle/Form/Type/Interpreter/CategoryMapInterpreterType.php

更新-中的 Service.yml   /var/www/html/example2.loc/vendor/w-vision/import-definitions/src/ImportDefinitionsBundle/Resources/config/services.yml

添加关注者-

import_definition.interpreter.category_map:     类:ImportDefinitionsBundle \ Interpreter \ CategoryMap     标签:         -{名称:import_definition。解释器,类型:category_map,表单类型:ImportDefinitionsBundle \ Form \ Type \ Interpreter \ CategoryMapInterpreterType}

更新-

中的 config.yml

添加关注-

interpreter_categorymap: '/bundles/importdefinitions/pimcore/js/interpreters/categorymap.js'

要csv上传,请按以下CLI命令运行-

bin/console import-definitions:import -d 1 -p "{\"file\":\"sap_export1.csv\"}"