Crud com Laravel - #6 Create
24/01/2020Fala turma! No tutorial de hoje trabalharemos com o método create do Laravel que serve para inserção de valores no banco de dados MySql.
Método Create do Laravel
Na nossa index.php criaremos primeiramente o caminho para a inserção de dados:
<div class="text-center mt-3 mb-4">
<a href="{{url('books/create')}}">
<button class="btn btn-success">Cadastrar</button>
</a>
</div>
Dentro de resources/views criaremos o arquivo create.blade.php
@extends('templates.template')
@section('content')
<h1 class="text-center">Cadastrar</h1> <hr>
<div class="col-8 m-auto">
<form name="formCad" id="formCad" method="post" action="{{url('books')}}">
@csrf
<input class="form-control" type="text" name="title" id="title" placeholder="Título:"><br>
<select class="form-control" name="id_user" id="id_user">
<option value="">Autor</option>
@foreach($users as $user)
<option value="{{$user->id}}">{{$user->name}}</option>
@endforeach
</select><br>
<input class="form-control" type="text" name="pages" id="pages" placeholder="Páginas:"><br>
<input class="form-control" type="text" name="price" id="price" placeholder="Preço:"><br>
<input class="btn btn-primary" type="submit" value="Cadastrar">
</form>
</div>
@endsection
Repare no código acima que utilizamos a tag @csrf para criarmos um token de segurança no nosso sistema Laravel.
No BookController.php vamos trabalhar no método create:
public function create()
{
$users=$this->objUser->all();
return view('create',compact('users'));
}
Por fim, teremos que trabalhar no método store que é responsável por inserir o dado no banco:
public function store(Request $request)
{
$cad=$this->objBook->create([
'title'=>$request->title,
'pages'=>$request->pages,
'price'=>$request->price,
'id_user'=>$request->id_user
]);
if($cad){
return redirect('books');
}
}
Para corrigir o erro de fillable precisamos permitir as colunas no arquivo ModelBook.php
protected $fillable=['title','id_user','pages','price'];
Sucesso nos códigos e na vida!
Posts Relacionados
Crud com Laravel - #5 Read II
Na aula de hoje trabalharemos com o método show do nosso ResourceController. Esse método é capaz de exibir os dados detalhados de cada registro.
Crud com Laravel - #7 Validações
Nesse tutorial iremos realizar as validações no formulário do nosso CRUD com Laravel. Nossa validação abrigará tanto o front quanto o backend.