Akeneo API - Получение моделей для детей

Я нахожусь на Akeneo 2.3 и имею структуру продукта как

Модель продукта (Мастер) -> Модель продукта (Цвет) -> Продукт (Размер)

Я пытаюсь назвать эту конечную точку

{{url}}/api/rest/v1/product-models?search={
    "parent": [{
        "operator": "=",
        "value": "DRZ9186"
    }]
}

Тем не менее, я получаю

{
    "code": 422,
    "message": "Filter on property \"parent\" is not supported or does not support operator \"=\""
}

Теперь я не совсем уверен, действительно ли родительские функции не поддерживаются через фильтр, так как они не упомянуты здесь https://api.akeneo.com/documentation/filter.html

Уверен, что все сводится к \Pim\Bundle\ApiBundle\Checker\QueryParametersChecker::checkPropertyParameters но я не мог двигаться дальше.

1 ответ

Решение

Свойство parent не доступно в данный момент в веб-API Akeneo.

Вы правы насчет QueryParametersChecker::checkPropertyParameters, Он проверяет, какие свойства можно использовать, основываясь на его определении сервиса. Как вы видете, parent не является одним из авторизованных полей.

Кстати, даже если бы он был доступен, на данный момент нет оператора = для собственности parent, Доступные операторы IN, EMPTY а также NOT EMPTY, Так что вместо:

search={"parent":[{"operator":"=","value":"DRZ9186"}]

правильный запрос будет:

search={"parent":[{"operator":"IN","value":"[DRZ9186]"}]

Не стесняйтесь открыть запрос на добавление функций в хранилище Akeneo GitHub, описывающий ваш вариант использования. Владельцы продуктов Akeneo наверняка заинтересуются.

Другие вопросы по тегам