我無法在observer.Apart中創建Magento中的工作重定向,因此我需要理解爲什麼異常就像我們在控制器中執行的操作在Observer中不起作用。Magento從觀察者重定向
在控制器完成的典型的例外是像下面(adminhtml控制器)
$message = $this->__('Exception Message.');
Mage::getSingleton('adminhtml/session')->addError($message);
$this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
return;
某處在我讀到下面方法從觀察者重定向博客。
Mage::getSingleton('core/session')->addError('Exception Message.');
Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('checkout/cart'));
Mage::app()->getResponse()->sendResponse();
exit;
我不明白在使用觀察器和控制器時的基本重定向差異。
爲什麼在觀察者中使用控制器重定向不起作用。
請幫我解釋一下。
非常感謝。
我認爲這是你要找的東西:http://stackoverflow.com/questions/9749005/magento-redirect-customer-from-observer-method – JNDPNT 2013-05-14 07:05:28
$ observer-> getRequest() - > setParam(' return_url」,的 'http://www.google.com/'); 以上代碼來自引用的URL不起作用。 – Slimshadddyyy 2013-05-14 12:17:47
那麼:$ this-> getResponse() - > setRedirect($ returnUrl); (而不是getFrontController()) – JNDPNT 2013-05-14 12:25:01