CRUD : Insert | Tambah Data Ke Database Dengan Laravel

Barintek
0


 

    Setelah kita berhasil menampilkan data dari database ke user, maka langkah selanjutnya adalah bagaimana menambah data ke dalam database tersebut. Sehingga data dapat ditambah tampa harus merubah atau membuka struktur database. Jadi kita akan membangun sistem dimana user bisa berinteraksi langsung dengan sistem. Dengan mempelajari materi ini diharapkan nantinya kita dapat memahami bagaimana interaksi antara sistem yang dibangun dengan user. Mari kita mulai

    Laravel sendiri menyediakan model yang dapat menambah data tanpa perlu repot-repot membuat sql. Jadi disini kita dipermudah untuk menambahkan data ke dalam database

Langkah Membuat Insert Data

Buat User Interface

    Buatlah sebuah file di view dengan nama form_tema.blade.php. Buatlah desain User Interface seperti berikut:

Langkah pertama, mari kita buka kembali view tema.blade.php. Kita buat link tambah untuk membuak halaman Form tambah. Berikut bentuk link-nya:

<div class="d-flex justify-content-end mb-3">
    <a href="{{ route('tema.create'}}" class="btn btn-primary">
        <i class="bi bi-plus-circle-fill me-2"></i>Tambah Tema Baru</a>
</div>

    Kita menambahakn link di href = ".." agar sistem bisa berpindah ke halaman tambah. Disini kita inisialkan untuk membuka halaman formulir dengan "create". Selanjutnya kita atur jalur/route dengan menambahk code di web.php seperti berikut:

//route tema
Route::get('/tema', [TemaController::class, 'index'])->name('tema.index');
Route::get('/tema/create', [TemaController::class, 'create'])->name('tema.create');

    Berdasarkan route yang dibuat, terlihat bahwa route tersebut memanggi function bernama tambah. Sekarang mari kita buat function tersebut. Buka TemaController dan buat function create() untuk membuka halaman form, seperti berikut ini:

public function create()
{
    return view('form_tema');
}

    

        Sekarang mari kita buat user interface untuk tampilan tambah. user interface ini kita beri nama form_tema.blade.php yang di simpan di dalam folder view. berikut bentuk script programnya:

@extends('templates.tem_main')
@section('main')
    <div class="container mt-5">
        <h3 class="bg-info p-2">Tambah Tema Baru</h3>
        <form action="{{ route('tema.store') }}" method="POST">
            @csrf
            <div class="form-floating mb-3">
                <input type="text" class="form-control" name="tema" placeholder="Nama Tema" value="{{ old('tema') }}"
                    required>
                <label>Nama Tema</label>
            </div>

            <div class="form-floating mb-3">
                <textarea class="form-control" placeholder="Keterangan Tema" name="keterangan" style="height: 100px" required></textarea>
                <label>Keterangan</label>
            </div>
            <button type="submit" class="btn btn-primary">
                <i class="bi bi-save-fill me-2"></i> Simpan
            </button>
            <a href="{{ route('tema.index') }}" class="btn btn-secondary">
                <i class="bi bi-x-circle-fill me-2"></i> Batal
            </a>
        </form>
    </div>
@endsection


    Coba perhatikan pada form. terdapat metohod dengan nilai POST dan action  ke route tambah. jadi ini akan menentukan route mana yang akan dipilih.

Buat Route

    Buka web.php kembali. kita akan membuat jalur baru. Sekarang tambahkan route seperti berikut:

//route tema
Route::get('/tema', [TemaController::class, 'index'])->name('tema.index');
Route::get('/tema/create', [TemaController::class, 'create'])->name('tema.create');
Route::post('/tema/store', [TemaController::class, 'simpan'])->name('tema.store');

Buat Controller

    Langkah terakhir kita adalah membuat function untuk menyimpan data yang telah dikirim user tadi ke dalam database. buat function simpan di dalam file TemaController seperti berikut:

public function store(Request $request)
{
    $data = [
        'tema' => $request->tema,
        'keterangan' => $request->keterangan
    ];
    TemaModel::create($data);
    return redirect()->route('tema.index');
}


    Oke, sekarang mari kita uji program tadi. Silahkan jalan kan program anda. Pilih tema dan klik tombol Tambah Data Tema yang ada di bagian atas. Nanti akan muncul form untuk tambah data. silahkan isi form tersebut dan klik Simpan. Perhatikan apakah data muncul di tabel ? Jika ya berarti kita telah sukses menambahkan data.

    Sekarang tugas anda membuat hal yang sama untuk tabel "kegiatan". Selamat bekerja


Tags

Posting Komentar

0Komentar

Posting Komentar (0)