Crie um novo projeto Laravel executando o seguinte comando no terminal:
laravel new cadastro-empregados
Crie um novo modelo e uma nova migração para a tabela “empregados” executando o seguinte comando no terminal:
php artisan make:model Empregado -m
Abra o arquivo de migração criado em “database/migrations” e adicione os campos que deseja para a tabela “empregados”. Por exemplo:
public function up()
{
Schema::create('empregados', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('nome');
$table->string('email')->unique();
$table->string('telefone');
$table->date('data_nascimento');
$table->timestamps();
});
}
Execute a migração para criar a tabela no banco de dados executando o seguinte comando no terminal:
php artisan migrate
Crie um novo controlador executando o seguinte comando no terminal:
php artisan make:controller EmpregadoController --resource
Abra o arquivo do controlador criado em “app/Http/Controllers” e adicione as funções necessárias para gerenciar os empregados. Por exemplo:
public function index()
{
$empregados = Empregado::all();
return view('empregados.index', ['empregados' => $empregados]);
}
public function create()
{
return view('empregados.create');
}
public function store(Request $request)
{
$empregado = new Empregado;
$empregado->nome = $request->nome;
$empregado->email = $request->email;
$empregado->telefone = $request->telefone;
$empregado->data_nascimento = $request->data_nascimento;
$empregado->save();
return redirect('/empregados');
}
public function edit($id)
{
$empregado = Empregado::findOrFail($id);
return view('empregados.edit', ['empregado' => $empregado]);
}
public function update(Request $request, $id)
{
$empregado = Empregado::findOrFail($id);
$empregado->nome = $request->nome;
$empregado->email = $request->email;
$empregado->telefone = $request->telefone;
$empregado->data_nascimento = $request->data_nascimento;
$empregado->save();
return redirect('/empregados');
}
public function destroy($id)
{
$empregado = Empregado::findOrFail($id);
$empregado->delete();
return redirect('/empregados');
}
Crie as rotas necessárias para acessar as funções do controlador abrindo o arquivo “routes/web.php” e adicionando as seguintes rotas:
Route::get('/empregados', 'EmpregadoController@index');
Route::get('/empregados/create', 'EmpregadoController@create');
Route::post('/empregados', 'EmpregadoController@store');
Route::get('/empregados/{id}/edit', 'EmpregadoController@edit');
Route::put('/empregados/{id}', 'EmpregadoController@update');
Route::delete('/empregados/{id}', 'EmpregadoController@destroy');
Crie as views necessárias para exibir e manipular os dados dos empregados. Por exemplo, crie um arquivo “index.blade.php” em “resources/views/empregados” com o seguinte conteúdo:
@extends('layout')
@section('content')
<h1>Lista de Empregados</h1>
<p><a href="/empregados/create">Adicionar Empregado</a></p>
<table>
<tr>
<th>Nome</th>
<th>Email</th>
<th>Telefone</th>
<th>Data de Nascimento</th>
<th>Ações</th>
</tr>
@foreach ($empregados as $empregado)
<tr>
<td>{{ $empregado->nome }}</td>
<td>{{ $empregado->email }}</td>
<td>{{ $empregado->telefone}}</td>
<td>{{ $empregado->data_nascimento }}</td>
<td>
<a href="/empregados/{{ $empregado->id }}/edit">Editar</a>
<form action="/empregados/{{ $empregado->id }}" method="POST">
@csrf
@method('DELETE')
<button type="submit">Excluir</button>
</form>
</td>
</tr>
@endforeach
</table>
@endsection
Crie as outras views necessárias para manipular os dados dos empregados. Por exemplo, crie um arquivo “create.blade.php” em “resources/views/empregados” com o seguinte conteúdo:
html
@extends('layout')
@section('content')
<h1>Adicionar Empregado</h1>
<form action="/empregados" method="POST">
@csrf
<div>
<label for="nome">Nome:</label>
<input type="text" name="nome" required>
</div>
<div>
<label for="email">Email:</label>
<input type="email" name="email" required>
</div>
<div>
<label for="telefone">Telefone:</label>
<input type="text" name="telefone" required>
</div>
<div>
<label for="data_nascimento">Data de Nascimento:</label>
<input type="date" name="data_nascimento" required>
</div>
<button type="submit">Salvar</button>
</form>
@endsection
Execute o servidor de desenvolvimento do Laravel executando o seguinte comando no terminal:
php artisan serve
- Acesse o aplicativo em seu navegador em “http://localhost:8000/empregados”.
Pronto! Agora você tem um exemplo básico de um aplicativo de cadastro de empregados em Laravel. É claro que este é apenas um exemplo e você pode personalizá-lo de acordo com suas necessidades.