O Gii é uma extensão que fornece um gerador de código baseado na Web para gerar modelos, formulários, módulos, CRUDs e assim por diante.
Por padrão, os seguintes geradores estão disponíveis
- Generator Model – Gera uma classe ActiveRecord para uma tabela de banco de dados especificada.
- CRUD Generator – Gera controladores e exibições que implementam operações CRUD (Create, Read, Update, Delete) para o modelo especificado.
- Controller Generator – Gera uma nova classe de controladores com uma ou mais ações de controlador e uma exibição correspondente.
- Form Generator – Gera um arquivo de script de exibição que mostra o formulário para coletar entradas para a classe de modelo especificada.
- Module Generator – Gera o código de esboço exigido pelo módulo Yii.
- Extension Generator – Gera os arquivos exigidos pela extensão Yii.
Ao usar o Gii, escrever código se torna mais rápido e fácil. Quando queremos fazer com que as operações CRUD ocorram em uma página, sem mudar de página, o modelo padrão do Gii ainda não pode fazer isso.
Neste artigo, aprenderemos a usar os modelos do Gii que já suportam operações CRUD em uma página usando o Ajaxcrud criado por johnitvn
Etapas para criar CRUD em uma página com o Ajaxcrud
- Instale a extensão johnitvn/yii2-ajaxcrud usando o composer
php composer.phar require --prefer-dist johnitvn/yii2-ajaxcrud "dev-master"
ou adicionar o seguinte código ao arquivo composer.json
"johnitvn/yii2-ajaxcrud": "dev-master"
- Essa extensão também requer Awesome Font,uma alternativa é usar o FontAwesomeAsset do kartik-v/yii2-icons adicionando o seguinte código ao arquivo composer.json.
"kartik-v/yii2-icons": "*"
- Em seguida, abra o Gii com o Url: “http://localhost/yii2-advanced/frontend/web/index.php?r=gii”. Se todo o processo ocorrer sem problemas, haverá um novo menu no Gii, chamado “Ajax CRUD Generator.
- Quando tudo estiver pronto, criamos um modelo a partir da tabela do banco de dados. Neste exemplo, criamos um modelo a partir da tabela “country” (país)
- Depois de criarmos o modelo, a próxima etapa é usar o CRUD com o “Ajax CRUD Generator
- Em seguida, abra o navegador com o URL: “http://localhost/yii2-advanced/frontend/web/index.php?r=country. Você verá que os botões “Actions” (Ações) e “New record” (Novo registro) não são exibidos.
- Para que o botão seja exibido, edite “frontend/views/country/index.php” e registre “FontAwesomeAsset” em “kartik-v/yii2-icons” da seguinte forma.
............ ............ use kartikiconsFontAwesomeAsset; FontAwesomeAsset::register($this); ............ ............
- Abrir novamente Url: “http://localhost/yii2-advanced/frontend/web/index.php?r=country”. Você verá resultados como este.
Boa sorte…
Que seja útil