0% found this document useful (0 votes)
12 views7 pages

01 Crud

Create Read Update Delete

Uploaded by

Pak Henry Cahyo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views7 pages

01 Crud

Create Read Update Delete

Uploaded by

Pak Henry Cahyo
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

#KelasIndustriHummasoft

CRUD

Pendahuluan

Pada praktikum kali ini kita akan mempelajari tentang konsep dari CRUD (Create, Read,
Update, dan Delete) pada framework laravel.

Praktikum 1: Membuat Halaman Tampilkan Data

Edit file CategoryController.php yang telah dibuat pada praktikum sebelumnya.

1. pada method index, edit seperti berikut :

public function index()


{
$datas = Category::all();

return view('dashboard.categories.index', compact('datas'));


}

2. pada file resources/views/dashboard/categories/index.blade.php, edit seperti berikut:

@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
@if (session('success'))
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-
label="Close"></button>
<div class="alert-message">
<strong>Sukses!</strong> {{ session('success') }}
</div>
</div>
@elseif(session('error'))
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-
label="Close"></button>
<div class="alert-message">
<strong>Terjadi Kesalahan!</strong> {{ session('error') }}
</div>
</div>
@endif

</div>
<div class="row">
<h3>Ini Halaman Kategori</h3>
</div>
#KelasIndustriHummasoft

<div class="row mb-3">


<div class="col-md-3">
<a href="{{ route('categories.create') }}" class="btn btn-primary">Tambah
Kategori</a>
</div>

</div>

<div class="row mt-3">


<table class="table table-bordered">
<thead>
<tr>
<th>No</th>
<th>Nama</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
@foreach ($datas as $data)
<tr>
<td> {{ $loop->iteration }}</td>
<td>{{ $data->name }}</td>
<td>
<form method="POST" action="{{ route('categories.destroy', $data->id)
}}">
@method('DELETE')
@csrf
<a class="btn btn-success" href="{{ route('categories.edit', $data->id)
}}">Edit</a>
<button type="submit" class="btn btn-danger"
onclick="return confirm('Apa anda yakin ingin menghapus
data?')">Hapus</button>
</form>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
@endsection

3. Jika Benar, hasil yang ditampilkan akan seperti berikut ini :


#KelasIndustriHummasoft

Praktikum 2: Membuat Halaman Tambah Data

1. edit file CategoryController.php, pada method create edit sebagai berikut:

public function create()


{
return view('dashboard.categories.create');
}

2. buat file baru dengan nama create.blade.php di dalam folder


resources/views/dashboard/categories/. kemudian isikan seperti berikut:

@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
</div>
<div class="row">
<h3>Tambah Kategori Baru</h3>
</div>

<div class="row mt-3">


<form method="POST" action="{{ route('categories.store') }}">
@csrf
<table class="table table-bordered">
<tbody>
<tr>
<td>Nama Kategori</td>
#KelasIndustriHummasoft

<td>
<input autocomplete="off" value="{{ old('name') }}"
class="form-control" type="text"
name="name">
</td>
</tr>
<tr>
<td></td>
<td>
<button class="btn btn-success" type="submit">Tambah
Data</button>
</td>
</tr>
</tbody>
</table>
</form>
</div>
</div>
@endsection

3. tambahkan logic validasi, dan insert data pada model category di method store()

$request->validate([
'name' => 'required'
], [
'name.required' => 'Nama harus diisi'
]);

Category::query()->create($request->all());

return to_route('categories.index')->with('success', 'Berhasil tambah kategori');

4. Hasil :
#KelasIndustriHummasoft

Praktikum 3: Membuat Halaman Edit Data

1. pada file CategoryController.php, modifikasi method edit sebagai berikut:

public function edit(string $id)


{
$data = Category::query()->findOrFail($id);

return view('dashboard.categories.edit', compact('data'));


}

2. buat file edit.php pada folder resources/views/dashboard/categories, dan isikan seperti berikut:

@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
</div>
<div class="row">
<h3>Edit Kategori</h3>
</div>

<div class="row mt-3">


<form method="POST" action="{{ route('categories.update', $data->id) }}">
@method('PATCH')
@csrf
<table class="table table-bordered">
<tbody>
<tr>
<td>Nama Kategori</td>
<td>
<input autocomplete="off" value="{{ $data->name }}"
class="form-control" type="text"
name="name">
</td>
</tr>
<tr>
<td></td>
<td>
<button class="btn btn-success" type="submit">Update
Data</button>
#KelasIndustriHummasoft

</td>
</tr>
</tbody>
</table>
</form>
</div>
</div>
@endsection

3. modifikasi method update pada CategoryController :

$request->validate([
'name' => 'required'
], [
'name.required' => 'Nama harus diisi'
]);

Category::query()->findOrFail($id)->update($request->all());

return to_route('categories.index')->with('success', 'Berhasil update kategori');

4. Hasil :
#KelasIndustriHummasoft

Praktikum 4: Membuat fungsi hapus data

1. modifikasi method destroy() pada CategoryController, da nisi seperti berikut ini

public function destroy(string $id)


{
Category::query()->findOrFail($id)->delete();

return to_route('categories.index')->with('success', 'Berhasil hapus kategori');


}

2. Hasil :

You might also like