我已经使用“ 导入定义”捆绑包来导入csv并创建数据对象。 (https://github.com/w-vision/ImportDefinitions)
现在,我需要将导入的数据对象放入相关文件夹。我需要自动执行。
例如-
设置对象路径“ /products/%Text(mycolumn1);/%Text(mycolumn2);
”不能满足我的要求。
我的csv带有类别代码而非全名。 我需要做一些映射。
例如:- csv列类别值为- OFH 我的数据对象文件夹名称为办公家具五金
我需要将两者匹配并放入正确的文件夹中。
使用“ 导入定义”执行此操作的最佳方法是什么?
如果最好的方式是“ 口译员”,请告诉我该怎么做?
谢谢。
答案 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\"}"