Phone no: (021) 7989671 or email us: info@zahra-itsolution.com
Posted on 15 August 2024
Pada artikel ini, kita akan membahas cara membuat fitur export ke Excel pada halaman Mata Kuliah di aplikasi Laravel Anda. Fitur ini akan memungkinkan pengguna untuk mengunduh data Mata Kuliah dalam format Excel, yang sangat berguna untuk keperluan laporan atau penyimpanan data offline.
Laravel Excel adalah package yang sangat populer dan mudah digunakan untuk mengimpor dan mengekspor file Excel. Untuk menggunakannya, kita perlu menginstalnya terlebih dahulu. Jalankan perintah berikut di terminal Anda:
composer require maatwebsite/excel
Setelah package ini terinstal, tambahkan service provider dan facade ke file config/app.php
. Namun, jika Anda menggunakan Laravel versi 5.5 ke atas, package ini akan otomatis didaftarkan.
Laravel Excel memungkinkan kita untuk membuat class export yang akan menangani logika untuk mengekspor data ke dalam file Excel. Untuk membuatnya, jalankan perintah berikut:
php artisan make:export MatakuliahExport --model=Matakuliah
Perintah ini akan membuat sebuah file export di dalam folder app/Exports
. Buka file MatakuliahExport.php
dan ganti dengan Code berikut:
<?php namespace App\Exports; use App\Models\Matakuliah; use Maatwebsite\Excel\Concerns\FromCollection; class MatakuliahExport implements FromCollection { /** * Mengambil data Mata Kuliah untuk diekspor. * * @return \Illuminate\Support\Collection */ public function collection() { return Matakuliah::all(); // Mengambil semua data Mata Kuliah } }
Class ini akan mengambil semua data Mata Kuliah dari database dan mempersiapkannya untuk diekspor ke dalam file Excel.
Selanjutnya, kita perlu membuat route yang akan mengarahkan pengguna ke fungsi export ketika tombol export ditekan. Tambahkan route berikut di file routes/web.php
:
use App\Exports\MatakuliahExport; use Maatwebsite\Excel\Facades\Excel; Route::get('/matakuliah/export', function () { return Excel::download(new MatakuliahExport, 'matakuliah.xlsx'); })->name('matakuliah.export');
Route ini akan mengarahkan pengguna ke fungsi export yang akan menghasilkan file Excel dengan nama matakuliah.xlsx
.
Sekarang, kita akan menambahkan tombol export di halaman Mata Kuliah yang akan memicu proses download file Excel. Buka file view Mata Kuliah Anda (misalnya index.blade.php
) dan tambahkan code Cetak Kuning berikut di atas tabel daftar Mata Kuliah:
@extends('layouts.app') @section('content') <div class="container"> <h1>Daftar Mata Kuliah</h1> <!-- Tombol Export ke Excel --> <a href="{{ route('matakuliah.export') }}" class="btn btn-success mb-3">Export ke Excel</a> <!-- Daftar Mata Kuliah --> @if($matakuliahs->isNotEmpty()) <table class="table table-bordered"> <thead> <tr> <th>Kode</th> <th>Nama Mata Kuliah</th> <th>Aksi</th> </tr> </thead> <tbody> @foreach($matakuliahs as $matakuliah) <tr> <td>{{ $matakuliah->CodeMataKuliah }}</td>
<td>{{ $matakuliah->NamaMataKuliah }}</td>
<td> <!-- Tombol aksi seperti edit dan hapus --> </td> </tr> @endforeach </tbody> </table> @else <p>Tidak ada Mata Kuliah yang ditemukan.</p> @endif </div> @endsection
Tombol export ini akan men-trigger route yang telah kita buat untuk menghasilkan dan mengunduh file Excel dengan semua data Mata Kuliah.
Sekarang, jalankan aplikasi Laravel Anda dan buka halaman Mata Kuliah. Anda akan melihat tombol Export ke Excel di atas tabel daftar Mata Kuliah. Ketika tombol ini diklik, file Excel yang berisi semua data Mata Kuliah akan diunduh ke perangkat pengguna.
Dengan mengikuti tutorial ini, Anda telah berhasil menambahkan fitur export ke Excel pada halaman Mata Kuliah di aplikasi Laravel Anda. Fitur ini akan memudahkan pengguna untuk mengekspor data Mata Kuliah dalam format Excel, yang sangat berguna untuk berbagai keperluan, seperti laporan, analisis, atau penyimpanan offline.
Semoga artikel ini bermanfaat dalam pengembangan aplikasi Laravel Anda!
Baca juga:
Tutorial: Membuat Tampilan (View) untuk CRUD di Laravel