Количество в корзине Magento -> количество недоступно - PullRequest
0 голосов
/ 08 марта 2012

Я использую Magento 1.5.1 для питания модного интернет-магазина. Я заметил странное поведение от Magento, которое, надеюсь, поможет мне разобраться:

Вот сценарий:

  1. В наличии 5 шт.

  2. Пользователь добавляет 5 в свою корзину

  3. В то же время кто-то купил 1 вещь, поэтому 5 больше не доступен. Новый запас 4. На мой взгляд, пользователь должен иметь возможность сбросить количество до 4.

  4. Пользователь пытается сбросить количество до 4. Это, однако, не работает. Все, что я получаю на этом этапе, - это то, что кол-во не доступно, а количество остается на уровне 5.

EDIT: Чтобы уточнить шаг 4 немного больше: Я получаю сообщение о том, что товара нет в наличии, когда я пытаюсь установить количество на 4.

Это известная ошибка в Magento? Как я могу проверить, что вызывает это?

Спасибо

1 Ответ

0 голосов
/ 13 марта 2012

Ок, наконец-то нашел обходной путь:

\ app \ code \ core \ mage \ checkout \ model \ cart.php Строка 383 - 386

изменение:

$item->setQty($qty);
if ($item->getHasError()) {
  Mage::throwException($item->getMessage());
}

до:

$oldqty = $item->getQty();
$item->setQty($qty);
if ($item->getHasError() && $qty > $oldqty) {
  Mage::throwException($item->getMessage());
}

Теперь он проверяет, меньше ли новое количество, чем старое. Если так, продолжайте. В противном случае сделайте старое поведение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...