Widgets ======= Os widgets são blocos de construção reutilizáveis usados nas [views (visões)](structure-views.md) para criar e configurar complexos elementos de interface do usuário sob uma modelagem orientada a objetos. Por exemplo, um widget datapicker pode gerar um calendário que permite aos usuários selecionarem uma data que desejam inserir em um formulário. Tudo o que você precisa fazer é apenas inserir um código na view (visão) conforme o seguinte: ```php = DatePicker::widget(['name' => 'date']) ?> ``` Existe uma quantidade considerável de widgets empacotados no Yii, como o [[yii\widgets\ActiveForm|active form]], o [[yii\widgets\Menu|menu]], o [jQuery UI widgets](widget-jui.md), o [Twitter Bootstrap widgets](widget-bootstrap.md), etc. A seguir, iremos introduzir os conhecimentos básicos sobre os widgets. Por favor, consulte a documentação de classes da API se você quiser saber mais sobre o uso de um determinado widget. ## Usando Widgets Os widgets são usados principalmente nas [views (visões)](structure-views.md). Você pode chamar o método [[yii\base\Widget::widget()]] para usar um widget em uma view (visão). O método possui um array de [configuração](concept-configurations.md) para inicializar o widget e retornar o resultado da renderização do widget. Por exemplo, o código a seguir insere um widget datapicker configurado para usar o idioma Russo e manter a data selecionada no atributo `from_date` do `$model`. ```php = DatePicker::widget([ 'model' => $model, 'attribute' => 'from_date', 'language' => 'ru', 'clientOptions' => [ 'dateFormat' => 'yy-mm-dd', ], ]) ?> ``` Alguns widgets podem ter um bloco de conteúdo que deve ser colocado entre as chamadas dos métodos [[yii\base\Widget::begin()]] e [[yii\base\Widget::end()]]. Por exemplo, o código a seguir usa o widget [[yii\widgets\ActiveForm]] para gerar um formulário de login. O widget irá gerar as tags de abertura e de fechamento do `