Membuat Fitur Buat, Perbarui, dan Hapus di Laravel

Untuk membangun fitur buat, perbarui, dan hapus di Laravel, ikuti langkah-langkah berikut:

Mendefinisikan Route

Mulailah dengan mendefinisikan route s untuk menangani tindakan pembuatan, pembaruan, dan penghapusan.

Route::get('/users', 'UserController@index')->name('users.index');
Route::get('/users/create', 'UserController@create')->name('users.create');
Route::post('/users', 'UserController@store')->name('users.store');
Route::get('/users/{id}/edit', 'UserController@edit')->name('users.edit');
Route::put('/users/{id}', 'UserController@update')->name('users.update');
Route::delete('/users/{id}', 'UserController@destroy')->name('users.destroy');

Pada contoh di atas, kita mendefinisikan route s untuk membuat pengguna, menyimpan pengguna, mengedit pengguna, memperbarui pengguna, dan menghapus pengguna.

 

Tentukan Controller

Selanjutnya, tentukan metode untuk controller menangani permintaan dari route s.

<?php  
  
namespace App\Http\Controllers;  
  
use App\Models\User;  
use Illuminate\Http\Request;  
  
class UserController extends Controller  
{  
    public function index()  
    {  
        $users = User::all();  
        return view('users.index', compact('users'));  
    }  
  
    public function create()  
    {  
        return view('users.create');  
    }  
  
    public function store(Request $request)  
    {  
        $validatedData = $request->validate([  
            'name' => 'required',  
            'email' => 'required|email',  
        ]);  
  
        $user = User::create($validatedData);  
  
        return redirect()->route('users.index')->with('success', 'User created successfully.');  
    }  
  
    public function edit($id)  
    {  
        $user = User::findOrFail($id);  
        return view('users.edit', compact('user'));  
    }  
  
    public function update(Request $request, $id)  
    {  
        $validatedData = $request->validate([  
            'name' => 'required',  
            'email' => 'required|email',  
        ]);  
  
        $user = User::findOrFail($id);  
        $user->update($validatedData);  
  
        return redirect()->route('users.index')->with('success', 'User updated successfully.');  
    }  
  
    public function destroy($id)  
    {  
        $user = User::findOrFail($id);  
        $user->delete();  
  
        return redirect()->route('users.index')->with('success', 'User deleted successfully.');  
    }  
}  

Di setiap metode, Anda dapat melakukan tindakan terkait seperti menampilkan formulir, menyimpan data baru, memperbarui data yang ada, dan menghapus data.

 

Buat pengguna Interface

Buat pengguna interface( views) untuk menampilkan formulir dan melihat data. Misalnya:

Daftar( views/users/index.blade.php):

@foreach($users as $user)  
    <p>{{ $user->name }}- {{ $user->email }}</p>  
@endforeach  

Sunting Formulir( views/users/create.blade.php):

<form method="POST" action="{{ route('users.store') }}">  
    @csrf  
    <input type="text" name="name" placeholder="Name">  
    <input type="email" name="email" placeholder="Email">  
    <button type="submit">Create User</button>  
</form>  

Sunting Formulir( views/users/edit.blade.php):

<form method="POST" action="{{ route('users.update', $user->id) }}">  
    @csrf  
    @method('PUT')  
    <input type="text" name="name" value="{{ $user->name }}">  
    <input type="email" name="email" value="{{ $user->email }}">  
    <button type="submit">Update User</button>  
</form>  

 

Menangani Data

Dalam metode simpan dan perbarui di controller, Anda dapat menggunakan metode Eloquent untuk menyimpan dan memperbarui data dalam database.

 

Pesan Tampilan

Terakhir, Anda dapat menampilkan pesan sukses atau kesalahan kepada pengguna setelah melakukan tindakan pembuatan, pembaruan, dan penghapusan.

  • Gunakan Laravel Sesi untuk menampilkan pesan sukses atau kesalahan dalam tampilan.

 

Dengan mengikuti langkah-langkah ini, Anda telah berhasil membangun fitur buat, perbarui, dan hapus di Laravel.