O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
3. Executa o controle;<br />
8. Dispara o evento onEndRequest (ao fim da requisição);<br />
Controle<br />
Um controle é uma instância de CController ou uma de suas classes derivadas. Ele é<br />
cria<strong>do</strong> pela aplicação durante a requisição <strong>do</strong> usuário. Quan<strong>do</strong> um controle entra em<br />
execução, ele também executa a ação requisitada, que, geralmente, recupera os modelos<br />
necessários e exibe a visão apropriada. Uma ação, em sua forma mais simples, nada<br />
mais é <strong>do</strong> que um méto<strong>do</strong> na classe <strong>do</strong> controle, cujo nome começa com action.<br />
Um controle tem uma ação padrão. Quan<strong>do</strong> a requisição <strong>do</strong> usuário não especifica qual<br />
ação executar, a ação padrão será utilizada. Por padrão, essa ação é chamada index. Ela<br />
pode ser alterada através da propriedade CController::defaultAction.<br />
Abaixo temos o código mínimo necessário para uma classe de controle. Uma vez que<br />
esse controle não define nenhuma ação, qualquer requisição feita para ele irá disparar<br />
uma exceção.<br />
class SiteController extends CController<br />
{<br />
}<br />
Rota<br />
Controles e ações são identifica<strong>do</strong>s por seus IDs. O ID de um controle é representa<strong>do</strong> no<br />
formatocaminho/para/xyz, que corresponde ao arquivo de classe <strong>do</strong> controle em<br />
protected/controllers/caminho/para/XyzController.php, onde o xyz deve ser substituí<strong>do</strong><br />
pelos nomes <strong>do</strong>s controles (por exemplo, post corresponde a protected/controllers/<br />
PostController.php).<br />
O ID de uma ação é o nome de seu méto<strong>do</strong> sem o prefixo action. Por exemplo, se um<br />
controle contém o méto<strong>do</strong> chama<strong>do</strong> actionEdit, o ID da ação correspondente será edit.<br />
Nota: Antes da versão 1.0.3, o formato <strong>do</strong> ID para os controles era caminho.para.xyz<br />
em vez de caminho/para/xyz.<br />
Usuários fazem requisições para uma ação e um controle em particular, por meio um rota.<br />
Uma rota, é formada concatenan<strong>do</strong>-se o ID de um controle e o ID de uma ação,<br />
separa<strong>do</strong>s por uma barra. Por exemplo, a rota post/edit refere-se ao controle<br />
PostController e sua ação edit. Por padrão, a URL http://hostname/index.php?r=post/edit<br />
irá requisitar esse controle e essa ação.