Domanda

<form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="form-validate">
.

e

<form action="<?php echo $this->getUrl('customer/account/createpost'); ?>" method="post" id="form-validate">
.

Entrambe il codice Call AccountController e Createpostaction Azione Ma il primo rendono questo processo molto complicato. Quindi la mia Qustion è il motivo per cui Magento usa questo metodo complicato.

QUI AZIONE Chiama questa funzione

public function getPostActionUrl()
{
    return $this->helper('customer')->getRegisterPostUrl();
}
.

e quindi blocco Usa Helper

public function getRegisterPostUrl()
{
    return $this->_getUrl('customer/account/createpost');
}
.

È stato utile?

Soluzione

La risposta è semplice. Extensibility & Enapsulation .
Avere l'URL restituito da un metodo, è possibile chiamare quel metodo ovunque nel codice senza la necessità di ricordare quale sia l'URL effettivo.
Anche nel caso in cui il team principale decida di cambiare l'URL, lo farà in un unico posto.

Se si decide di cambiare l'URL tutto ciò che devi fare è riscrivere un singolo metodo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top