Agregué una nueva pestaña personalizada en el panel de control del cliente. Si mi formulario personalizado se ejecuta correctamente, debo redirigirlo a la página principal del cliente customer/account
. ¿Cómo puedo hacer esto?
14
Puede usar directamente el siguiente código en el controlador de acción
$this->_redirect('customer/account/');
Use el siguiente código:
protected $resultRedirect;
public function __construct(\Magento\Framework\Controller\ResultFactory $result){
$this->resultRedirect = $result;
}
public function execute()
{
$resultRedirect = $this->resultRedirect->create(ResultFactory::TYPE_REDIRECT);
$resultRedirect->setUrl($this->_redirect->getRefererUrl());
return $resultRedirect;
}
Espero que sea útil para usted y para los demás.
No es necesario declarar $ this-> resultRedirectFactory en la construcción como se declara automáticamente en la construcción de \ Magento \ Framework \ App \ Action \ Action a la que debe extenderse su controlador personalizado. De lo contrario, obtendrá un error durante la compilación: resultRedirectFactory ya está declarado
fuente
Prueba este código:
fuente
Prueba este código, espero que puedas usarlo :)
fuente
$this->_url->getUrl()
fue el detalle que faltaba para mí, ¡gracias!Pruebe este código en el controlador para redirigir a la página anterior:
fuente
Redirigir a una URL específica debajo del código funciona bien para mí. Por favor verifica esto
Aquí, $ url es url completa. por ejemplo, http://yoursite.com/customer/account/create/
fuente