Pim-community-dev: Обновление продукта с осью вариантов невозможно

Созданный на 28 авг. 2018  ·  12Комментарии  ·  Источник: akeneo/pim-community-dev

Начиная с версии 2.3.5 невозможно обновить вариант продукта.

Проблема заключается в методе isEqual(ValueInterface $value) в классе AbstractValue (src / Pim / Component / Catalog / Model / AbstractValue.php). Первое равное $this->getData() === $value->getData() в строке 60 будет истинным, только если оба являются одинаковыми ссылками на один и тот же экземпляр одного и того же класса, чего не должно быть. Поэтому в этом случае вместо оператора идентичности следует использовать оператор сравнения.

Логическая ошибка была внесена в коммит 3e652c2820639e6b7192292644273bb2d97d2b85.

akeneo-pim-system-info_2018-08-28_11_14.txt

Самый полезный комментарий

Действительно, теперь я могу воспроизвести это! Спасибо. Это может быть связано с типом атрибута, используемого в качестве оси вариантов. В настоящее время я вижу ошибку только в том случае, если тип - «метрический».

Все 12 Комментарий

Привет @simonkey ,

Спасибо, что подняли эту проблему, не могли бы вы рассказать нам, как мы можем легко воспроизвести проблему?
Я пытался обновить варианты продуктов в нашей демонстрационной среде, и все работает нормально.
(Наш демонстрационный env теперь находится в версии 2.3.6).

Спасибо!

Это происходит на демо. Мы можем увидеть это здесь:
http://demo.akeneo.com/#/enrich/product/1240

Я уже обновился до 2.3.6, но это не исправило.

Привет @fjlenatz ,

Спасибо за хороший отчет. @LaureBro и я (по отдельности) пытались воспроизвести это в демо, но, похоже, все работает так, как мы и ожидали.

Может быть, мы не идем по тому же сценарию. Можете ли вы предоставить пошаговый сценарий демонстрации с вашими действиями и ожиданиями?

Спасибо.

Привет!

1) Создайте модель продукта LED TV и установите вариант LED TV.
2) Создайте продукт с этим вариантом.
3) Он будет создан, но когда вы попытаетесь его отредактировать или снова сохранить, вы увидите ошибку.

В продукте, который я отправил, прежде чем вы его увидите. Другой пример:
http://demo.akeneo.com/#/enrich/product/1242

В демонстрационном наборе по умолчанию это Модель продукта TV SAMSUNG (идентификатор samtv) из семейства «LED-телевизоры». При попытке обновить что-либо в одном из существующих вариантов возникает ошибка Вариант оси "display_diagonal", ... возникает, и продукт не может быть сохранен / обновлен.

Спасибо за подробности :) Сразу протестирую!

Действительно, теперь я могу воспроизвести это! Спасибо. Это может быть связано с типом атрибута, используемого в качестве оси вариантов. В настоящее время я вижу ошибку только в том случае, если тип - «метрический».

Да, похоже, что ошибка возникает только в том случае, если используется "метрика".

Я также подтверждаю, что это действительно ошибка, спасибо, что сообщили о ней!
Хотели бы вы внести свой вклад и исправить это?
Вот наше руководство по вкладу: https://docs.akeneo.com/2.3/contribute_to_pim/contribution_guide.html#how -to-submit-a-patch-to-the-pim
Дайте мне знать, если вы хотите устроить пиар, и если да, то если вам понадобится помощь.
Если вы не хотите участвовать, нет проблем, мы добавим эту проблему в наш трекер ошибок и исправим ее как можно скорее.

Привет, @simonkey , @fjlenatz ,

Эта проблема очень скоро будет решена нашей командой обслуживания, я удалил ее из проекта «Хочу внести свой вклад». Я буду держать вас в курсе.

Привет, @simonkey и @fjlenatz!

Вот PR с исправлением: https://github.com/akeneo/pim-community-dev/pull/8872
Он будет объединен в течение дня, и исправление будет доступно в следующем теге 2.3 :)

Хорошего дня !

Здравствуйте, эта проблема исправлена ​​в последнем патче 2.3: 2.3.9.
Закрываю этот вопрос.
С уважением,
Лауре

Была ли эта страница полезной?
0 / 5 - 0 рейтинги