Cakephp usar un helper dentro de otro helper
Me ha pasado que creando un nuevo helper, he necesitado a acceder a funciones de otro helper, en mi caso acceder a las funciones del helper Html por ejemplo a la funcion link().
Pues bien hay que definir el array $helpers con todos los helpers que quieras usar dentro del tuyo propio.
1
2
3
class TestHelper extends AppHelper {
var $helpers = array('Html');
}
Pues me pase de listo y fui muy rápido al intentar acceder a las funciones de link(), directamente escribiendo $html->link(). Craso error.
Evidentemente no se hace así. La manera correcta es llamar desde tu propio objeto al objeto Html y de éste a la función
La llamada correcta es $this->Html->link()
Con más detalle en el siguiente ejemplo.
1
2
3
4
5
6
7
class TestHelper extends AppHelper {
var $helpers = array('Html');
function getTheLink() {
return $this->Html->link('The link', '/');
}
}
Esta entrada está licenciada bajo
CC BY 4.0
por el autor.