Crie o model status
para criar o model status use o comando: php artisan make:model Status -m
adicione os seguintes campos:
- status varchar(80)
- descricao text
em seguida renomeie a migration statuses para que a mesma seja a primeira a aparecer na lista
Schema::create('statuses', function (Blueprint $table) {
$table->id();
$table->string('status',80);
$table->text('descricao');
$table->timestamps();
});
Vamos fazer algumas alterações no model user
Modifique a migration users acrescentando os campos,
- eh_admin varchar(1)
- status_id integer
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->string('eh_admin',1)->defaul('N');
$table->integer('status_id')->nullable();
$table->rememberToken();
$table->timestamps();
});
Crie um controller de recursos chamado Status, para que o projeto fique mais organizado salve o controller numa pasta chamada Cadastro
No controller StatusController implemente o método index, o qual deverá:
- pegar a lista de status e colocar um array
- chamar a view Status/Index com o array criado com a lista de categorias
public function index()
{
$dados["lista"] = Categoria::get();
return View("Cadastro.Categoria.Index", $dados);
}
Crie a view para a listagem de status
Dentro da pasta resources/view crie uma pasta chamada de Cadastro e dentro de Cadastro crie uma outra chamada de Status e dentro da pasta Status crie um arquivo chamado Index.blade.php
Copie o conteúdo do arquivo lst_status para o arquivo Cadastro/Status/Index.blade.php, não esqueça envolvê-lo pelos comandos:
@extends('template')
@section('conteudo')
//aqui fica o conteúdo do arquivo
@endsection
Na view Index, faça os seguintes procedimentos:
- Faça o loop para receber os dados do banco e listar na tabela
- Não crie nenhum link para fazer a edição
- Não crie nenhum link para fazer a exclusão de um registro
@foreach ($lista as $l)
<tr>
<td align="center">{{ $l->id }}</td>
<td align="left">{{ $l->categoria }}</td>
<td align="center">
<a href="{{ route('categoria.edit', $l->id) }}"
class="d-inline-block btn btn-outline-roxo btn-pequeno"><i
class="fas fa-edit"></i>
Editar</a>
<a href="javascript:;"
onclick="confirm('Tem Certeza?') ? document.getElementById('apagar{{ $l->id }}').submit() : '';"
class="d-inline-flex gap-3 btn btn-outline-vermelho btn-pequeno">
<i class="fas fa-trash-alt"></i>
<form action="{{ route('categoria.destroy', $l->id) }}" method="POST"
id="apagar{{ $l->id }}">
@method('DELETE')
@csrf
</form>
Excluir
</a>
</td>
</tr>
@endforeach