20.11.2014 Views

O Guia Definitivo do Yii 1.1

O Guia Definitivo do Yii 1.1

O Guia Definitivo do Yii 1.1

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Nota: O path alias ext está disponível a partir da versão 1.0.8. Nas versões anteriores,<br />

precisávamos utilizar application.extensions para nos referir ao diretório base das<br />

extensões. Nos exemplos a seguir, vamos assumir que ext está defini<strong>do</strong>, Caso você<br />

utilize a versão 1.0.7, ou anterior, substitua o path alias por application.extensions.<br />

Extensões diferentes tem requisitos diferentes para importação, configuração e utilização.<br />

Abaixo, resumimos os tipos mais comuns de utilização de extensões, de acor<strong>do</strong> com as<br />

categorias descritas na visão geral.<br />

Extensões Zii<br />

Antes de descrever a utilização de extensões de terceiros, gostariamos de apresentar a<br />

biblioteca de extensões Zii. Trata-se de um conjunto de extensões criadas pelo time de<br />

desenvolve<strong>do</strong>res <strong>do</strong> <strong>Yii</strong> e é incluída em to<strong>do</strong>s os lançamentos <strong>do</strong> framework, a partir da<br />

versão <strong>1.1</strong>.0. Essa biblioteca está hospedada no Google Code, no projeto chama<strong>do</strong> zii.<br />

Ao utilizar uma das extensões da Zii, você deve utilizar um path alias para fazer<br />

referências às classes correspondentes, no formato zii.caminho.para.NomeDaClasse. O<br />

alias zii é defini<strong>do</strong> pelo framework e aponta para o diretório raiz da biblioteca Zii. Por<br />

exemplo, para utilizar a extensão CGridView, devemos utilizar o seguinte código em uma<br />

view:<br />

$this->widget('zii.widgets.grid.CGridView', array(<br />

));<br />

'dataProvider'=>$dataProvider,<br />

Componente de Aplicação<br />

Para utilizar um componente de aplicação, primeiro precisamos alterar a configuração da<br />

aplicação adicionan<strong>do</strong> uma nova entrada na propriedade components, como no código<br />

abaixo:<br />

return array(<br />

// 'preload'=>array('xyz',...),<br />

'components'=>array(<br />

'xyz'=>array(<br />

'class'=>'ext.xyz.XyzClass',<br />

'property1'=>'value1',<br />

'property2'=>'value2',<br />

),<br />

// configurações de outros componentes<br />

),<br />

);<br />

Dessa forma, podemos acessar o componente em qualquer lugar utilizan<strong>do</strong> <strong>Yii</strong>::app()-<br />

>xyz. O componente será cria<strong>do</strong> somente quan<strong>do</strong> for acessa<strong>do</strong> pela primeira vez, a não<br />

ser que ele tenha si<strong>do</strong> adiciona<strong>do</strong> na propriedade preload.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!