Atributo Template
1Apresentação
O atributo \Temma\Attributes\Template define o caminho do arquivo de template a ser usado por um controlador ou ação.
2Parâmetros
O atributo oferece dois parâmetros:
-
$template: (null|string) Caminho do arquivo de template a ser usado.
Equivalente ao método _template() nos controladores.
Esse parâmetro pode ser definido explicitamente como null; nesse caso, o valor padrão (controller/action.tpl) é usado.
-
$prefix: (null|string) Prefixo a ser adicionado ao caminho do template a ser usado.
Equivalente ao método _templatePrefix() nos controladores.
Esse parâmetro pode ser definido explicitamente como null; nesse caso, o prefixo do template será redefinido.
3Exemplos
Para garantir que todas as ações do controlador usem o mesmo template:
use \Temma\Attributes\Template as TµTemplate;
#[TµTemplate('myController/index.tpl')]
class MyController extends \Temma\Web\Controller {
// ...
}
Para que uma ação específica use o template definido:
use \Temma\Attributes\Template as TµTemplate;
class MyController extends \Temma\Web\Controller {
#[TµTemplate('otherController/someAction.tpl')]
public function myAction() {
// ...
}
}
Para adicionar um prefixo aos templates de todas as ações do controlador:
use \Temma\Attributes\Template as TµTemplate;
#[TµTemplate(prefix: 'special')]
class MyController extends \Temma\Web\Controller {
// usa o template "special/myController/myAction.tpl"
public function myAction() {
// ...
}
// usa o template "special/index.tpl"
#[TµTemplate('index.tpl')]
public function action2() {
// ...
}
// usa o template "myController/action3.tpl"
#[TµTemplate(prefix: null)]
public function action3() {
// ...
}
}