Adicionei uma nova guia personalizada no painel do cliente. Se meu formulário personalizado for executado com sucesso, preciso redirecionar para a página principal do cliente customer/account
. Como posso fazer isso?
14
Você pode usar diretamente o código abaixo no controlador de ação
$this->_redirect('customer/account/');
Use o código abaixo:
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 seja útil para você e para os outros.
Não há necessidade de declarar $ this-> resultRedirectFactory na construção, como declarada automaticamente na construção de \ Magento \ Framework \ App \ Action \ Action à qual seu controlador personalizado deve se estender. Caso contrário, você receberá um erro durante a compilação: resultRedirectFactory já está declarado
fonte
Tente este código:
fonte
Experimente este código, espero que você possa usá-lo :)
fonte
$this->_url->getUrl()
foi o detalhe que faltava para mim, obrigado!Tente este código no controlador para redirecionar para a página anterior:
fonte
Redirecionar para URL específico abaixo do código funciona bem para mim. Por favor, verifique isso
Aqui, $ url é URL completo. por exemplo, http : //seu site.com/customer/account/create/
fonte