问题标签 [akeneo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
akeneo - 在 Akeneo 中创建可配置产品
我们想在 Akeneo 中创建可配置产品。任何人都可以帮助我如何在 Akeneo 中创建可配置的产品。
谢谢
assets - 如何为所有资产生成变体文件
我是 Akeneo 的新手,我发现了资产的配置文件配置。
所以我导入了我的 YML 以添加资产转换,现在,基于 cli,我找不到允许我为所有资产生成变体文件的命令。我看到了逐个资产和逐个通道执行该资产的命令,但我需要为所有这些执行此操作。
你知道我怎么能做到这一点吗?我已经尝试过pim:asset:generate-missing-variation-files
了,但这并没有改变任何东西
php - 带有编号索引的学说 mongodb 查询构建器投影
我需要限制学说 mongoDB 查询返回的数据量。我可以select
用来投影到简单的字段,甚至是简单的嵌入式数组字段,例如normalizedData.ean
. 这完美无缺。
但是,我有如下形式的必要数据:
该框架是 Akeneo PIM 顺便说一句。
所以这里的问题是,"values"
不是通过我可以使用的唯一标识符进行索引,而是通过编号索引。我事先知道"attribute"
号码,所以我可以查询。
所以我正在寻找的是一个学说 mongo DB 查询构建器,它能够只返回那些实际包含属性号为 110 和 207 的值的实体,而且我只想返回这些值中的数据。
我有一个使用唯一(字符串)索引的有效查询生成器:
编辑:现在我找到了一种查询这些的方法"values"
,但我不能用这个查询投射多个属性:
我想在这里得到的是两个属性(117 和 110),但我只得到一个。此外,我得到一些结果,其中两个属性都不存在,即使我想象已经过滤掉了那些带有->field('values')->elemMatch($qb->expr()->field('attribute')->in(array(117, 110)))
.
显然,我仍然需要了解一些关于 mongoDB 的基础知识。任何形式的帮助将不胜感激。
如何仅获取在其“值”集合中具有属性 117 和/或 110 的实体,同时仅获取这些属性数据?
注意:同一个属性 ID 可以在不同语言中多次使用。我希望能够将结果限制为指定的语言。
localization - 在 Akeneo 2.1 中,如何获取活动语言环境列表?
我正在 Akeneo 2.1 中创建一个控制台命令,但我正在尝试获取活动语言环境的列表。我怎样才能得到这个?
import - Akeneo 2.1:导入/导出最佳实践以进行设置
我目前正在设置需要与电子商务解决方案通信的 Akeneo (2.1) 实例。我想知道导入和导出数据的最佳实践是什么。这方面缺乏文档;它告诉您如何设置它,但我在这里缺少实际用例。
这就是我的想法:
- 我希望我们的客户能够使用 FTP 连接上传他们的图像/CSV 文件。
- 理想情况下,Akeneo 应该仅在检测到此 (FTP) 目标文件夹中的突变时才开始导入。
- 每天只能导出一次或两次,完成后应使用 (s)FTP 将存档传输到其他位置
我目前在如何在 Akeneo 中实现此流程时遇到了麻烦。因为如果我看看开箱即用的东西,我可以得出以下结论:
- 我可以设置一个以“app/uploads/product/”结尾的 FTP 帐户,并允许客户上传到该位置
- Akeneo 没有检测到文件系统的变化,所以我只能设置一个尝试每小时导入一次的 cronjob。这种方法的缺点是 Akeneo 每次都会将 CSV 文件复制到 `app/archive/import`。如果您有较大的 CSV 文件,这可能会导致磁盘使用量有所增加。
- 我可以设置一个 cronjob 每天导出两次,但同样:Akeneo 将在每次导出时创建档案,因此 `app/archive/export` 每天都会变得更大。请注意,我的客户拥有超过 4GB 的资产(图像、文档等)。Akeneo 是否时不时清理 `app/archive` 文件夹?
- 每个导出的存档都在一个新文件夹中(每个递增的作业编号(例如`app/archive/export/csv_product_export/28/`)),所以我有点想知道如何检测这个新文件夹以及如何导出完成后,我可以触发将存档上传到远程 (S)FTP 服务器。
我只是想知道与 Akeneo 合作的其他人是如何应对这些挑战的。我知道我可以编写自己的自定义包并挂钩到大量事件或编写 shell 脚本,这些脚本对我来说很神奇,但我想知道 Akeneo 本身已经提供了关于这个主题的哪些内容。
欢迎任何关于这个话题的想法/想法/建议/经验!
attributes - Akeneo 2.1.4:如何更改属性类型?
我有一个 type 的属性pim_catalog_number
,但我需要将其更改为pim_catalog_simpleselect
. 我无法在 Akeneo 中更改它,如果我尝试通过导入新的属性文件来覆盖它,我会收到不允许更改类型的通知。
但我有一个需要这样做的场景。那么这样做的正确方法是什么?我可以想象做一些直接的 SQL 查询,但是直接在数据库中更改类型的后果是什么?
import - Akeneo 2.1.4:如何更改产品的父级(使用的产品型号)
我有要求在导入时我需要能够更改为产品的产品型号。我尝试通过更改parent
我正在导入的 CSV 文件中的 来做到这一点,但这将显示以下消息:
警告父:属性“父”不能被修改,“new_parent_code”给定。
使这项工作的正确方法是什么?我尝试通过直接在 -table 中编辑父级手动为产品分配不同的父级来“破解”数据库pim_catalog_product
,这似乎可行,但是在编辑产品时会出现意外结果。
谁能指出我在导入时如何更改产品父级的正确方向?
更新:
我现在想出了以下解决方案:
在我自己的包中,我添加了Resources/config/updaters.yml
(使用 DependencyInjecten 扩展)以下内容:
我的习惯ParentFieldSetter.php
:
这行得通。现在,在导入父级时,会正确保存。我只是想知道是否:
- 一个)。这个实现是正确的。
- 乙)。我不会通过更改父母来引起其他一些重大问题。
我还在尝试更改父级时引发错误的代码上方的原始 Akeneo 代码中注意到以下 TODO 语句:
// TODO: 这将在 PIM-6350 中删除。
Akeneo 的任何人都愿意对此有所了解吗?
php - 使用接口 AkeneoPimClientInterface 扩展类?
如何使用 Akeneo\Pim\AkeneoPimClientInterface 在 Symfony 中扩展生成的命令?
我使用 php app/console generate:command 生成了一个命令,我得到了这个类:
然后将其开发到我需要 API 中的所有类别的地步。无缝地这真的是一个简单的问题,我如何在命令中使用 AkeneoPimClientInterface。
我想像这样使用它。
此处的 apiClient 位于 _contruct 方法中
并且在使用中
但是当我试图将它放在命令中的 _construct 方法中时,它想使用父 _construct 并且它只是看不到生成的命令。
谁能帮助我?
php 应用程序/控制台触发器构建 -vvv
php - Akeneo 2.1.4:如何使用属性值作为数据网格中产品模型的标签?
当我在 Akeneo 2.1.4 中使用产品模型时,我在标签列中看到了产品模型的代码。但我想在那里显示特定属性的值;name
例如或group name
。我怎样才能做到这一点?
编辑:
我尝试扩展类并用我自己的方式重写它entities.yml
:
但后来我得到了错误:
akeneo - Akeneo 2.1.4:为什么 Akeneo 不允许您更改家庭变体?
当我将新产品模型导入 Akeneo 并想更改系列变体时,我收到以下消息:
现在我可以通过Pim\Component\Catalog\Updater\ProductModelUpdater
像这样扩展来绕过这个异常:
但我想知道的是(也许 Akeneo 团队的某个人可以回答这个问题)
- 为什么我不允许更改家庭变体?
- 无论如何,这样做可能会产生什么副作用?