Редирект от наблюдателя в magento 2 - PullRequest
0 голосов
/ 12 декабря 2018

Я работаю над Magento 2.2.5.Я создал событие checkout_cart_product_add_after.Таким образом, мне нужно проверить, когда пользователь нажимает кнопку «Добавить в корзину», затем я хочу проверить, существует ли конкретный продукт в корзине, тогда пользователь не может добавить этот продукт.

Так что для этого, если пользователь добавляет этот продукт, то он долженперенаправить на ту же страницу с сообщением об ошибке.

Пример: Если пользователь добавил продукт A в корзину.Затем, если он добавляет продукт A1, то я хочу перенаправить на последнюю страницу с сообщением об ошибке «Вы не можете добавить A1 в корзину».

В настоящее время я сделал это, но мне нужно добавить exit или die() послекод перенаправления.

Как этого добиться без exit или die().

КОД:

if ($condition) {
     $this->messageManager->addError(__("Error Message", $var));
     $this->_responseFactory->create()->setRedirect($url)->sendResponse();
     die();
}
if ($condition) {
     $this->messageManager->addError(__("Another Error message"));
     $this->_responseFactory->create()->setRedirect($url)->sendResponse();
     die();
}

Здесь я должендобавить die ().

1 Ответ

0 голосов
/ 14 декабря 2018

Вы можете выдать исключение следующим образом:

throw new \Magento\Framework\Exception\LocalizedException(__('Sorry, but seems to be a problem with this product, please try again later.')

И тогда вам не нужно добавлять exit () или die ()

Приветствия

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