Как разрешить дублирование SKU в Magento - PullRequest
1 голос
/ 23 апреля 2009

У меня есть клиент, который продает батареи сторонних производителей, и некоторые батареи могут заменить несколько моделей OEM.

Например, сторонний SKU 12345 может заменить Toshiba N23 и HP 53214, поэтому мой клиент хотел бы создать два продукта с одинаковым SKU в передней части (по сути, это один и тот же продукт). Однако Magento по умолчанию не допускает дублирование SKU.

Мое текущее решение состоит в том, чтобы установить для SKU необязательный параметр из серверной части, добавить еще один атрибут с именем Model, который допускает дублирование значений, и отобразить модель в переднем конце.

Есть ли лучший способ сделать это? Или можно разрешить дублирование SKU?

Тянь Бо
Благородные технологии

Ответы [ 4 ]

6 голосов
/ 23 апреля 2009

Мне кажется, что вы нашли хорошее решение. Я не уверен, что вы должны попытаться использовать дубликаты для SKU по двум причинам.

Во-первых, весь смысл SKU в том, что это уникальный идентификатор. Это единственная причина существования. Если вы собираетесь иметь повторяющиеся значения, то это не уникальный идентификатор; это просто еще один атрибут. Но, конечно, Magento все еще нужен уникальный идентификатор для работы, а это означает, что это дополнительное поле, которое приведет нас именно туда, где вы сейчас находитесь.

Это говорит о том, что мы подходим ко второму пункту, который заключается в том, что ... я не совсем гуру в Magento, но я создал свою долю сайтов электронной коммерции, и я понял, что они зависят от определенные нерушимые правила для правильной работы. Один из них заключается в том, что уникальные идентификаторы уникальны как на уровне базы данных, так и на уровне приложений. Таким образом, большая часть сайта зависит от того, чтобы это функционировало правильно. Что, я уверен, относится и к Magento.

Таким образом, попытка изменить такую ​​базовую предпосылку во что-то столь сложное приведет только к ужасам и медленному погружению в безумие.

2 голосов
/ 11 марта 2011

Это звучит как хорошее решение, которое я расширил немного дальше, однако то, что я сделал с несколькими хранилищами, было создать видимый атрибут ITEM_SKU (Item SKU) - сделать его видимым и доступным для поиска, а затем объединить store_id с SKU Magneto, чтобы это уникальный. Таким образом, SKU становится (Store_id "-" SKU).

1 голос
/ 02 ноября 2012

Почему бы вам не создать 1 товар (SKU 12345) и не перечислить его в нескольких категориях. Таким образом, вашими несколькими категориями будут Toshiba и HP. Тот же продукт (SKU 12345) будет указан в Toshiba и HP.

1 голос
/ 20 января 2012

Меня удивляет, как часто люди хотят сломать те части Magento «кто знает, что», просто чтобы конкретная часть работала так, как они ожидают.

Правильный способ учесть дубликаты Skus - это НЕ (если вы не хотите переписывать большие части фреймворка). Однако вы МОЖЕТЕ добавить пользовательский атрибут к продуктам, которые имеют все те же настройки, что и «sku», минус параметр, для которого значения должны быть уникальными.

Изменение страниц продукта, электронных писем и т. Д. Для отображения этого значения потребует немного дополнительной работы, но впоследствии избавит вас от головной боли.

...