Kami Hadir Membantu Anda Dalam Pengembangan Usaha Anda

Ketapang, Kalimantan Barat elektranetworkvision@gmail.com
Posted On June 22, 2025

๐Ÿ“ฅ Belajar Laravel dari Nol โ€“ Part 12: Import Data dari Excel ke CouchDB dan MongoDB

elektra_network 0 comments

Import data dari file Excel sangat penting untuk mengisi data awal aplikasi. Pada part ini kita fokus pada dua skenario database modern: NoSQL berbasis dokumen, yaitu CouchDB dan MongoDB, yang mulai banyak digunakan di skala enterprise dan big data.

Artikel ini dibuat dengan analisa teknis mendalam dan SEO maksimal sesuai kebutuhan developer Laravel modern.


๐ŸŽฏ Tujuan Part 12

  • Import file Excel (.xlsx) ke Laravel
  • Memproses data Excel ke struktur array
  • Simpan data ke MongoDB dan CouchDB via Laravel
  • Gunakan package Laravel Excel dan PHPOnCouch/MongoDB PHP Driver

๐Ÿ› ๏ธ 1. Instalasi Laravel Excel

composer require maatwebsite/excel

Buat import class:

php artisan make:import ProdukImport

๐Ÿงพ 2. Setup Import Class

Contoh untuk struktur data produk:

๐Ÿ“ app/Imports/ProdukImport.php

use Maatwebsite\Excel\Concerns\ToCollection;
use Illuminate\Support\Collection;

class ProdukImport implements ToCollection
{
    public function collection(Collection $rows)
    {
        foreach ($rows as $index => $row) {
            if ($index === 0) continue; // skip header

            $data = [
                'nama' => $row[0],
                'kategori' => $row[1],
                'harga' => (int) $row[2],
            ];

            // Simpan ke CouchDB atau MongoDB
        }
    }
}

๐Ÿƒ 3. Simpan ke MongoDB

a. Instal MongoDB Driver Laravel

composer require jenssegers/mongodb

Ubah koneksi di config/database.php:

'mongodb' => [
    'driver'   => 'mongodb',
    'host'     => '127.0.0.1',
    'port'     => 27017,
    'database' => 'laravel_mongo',
],

Model Mongo:

use Jenssegers\Mongodb\Eloquent\Model;

class ProdukMongo extends Model
{
    protected $connection = 'mongodb';
    protected $collection = 'produk';
    protected $fillable = ['nama', 'kategori', 'harga'];
}

Simpan di collection() import:

ProdukMongo::create($data);

๐Ÿ›‹๏ธ 4. Simpan ke CouchDB

a. Instal PHPOnCouch

composer require php-on-couch/php-on-couch

Konfigurasi koneksi:

use \PHPOnCouch\CouchClient;

$client = new CouchClient("http://127.0.0.1:5984", "produkdb");

Simpan dokumen di dalam collection():

$doc = (object) $data;
$client->storeDoc($doc);

๐Ÿ“ค 5. Buat Controller Upload

use App\Imports\ProdukImport;
use Maatwebsite\Excel\Facades\Excel;

public function import(Request $request)
{
    $request->validate([
        'file' => 'required|file|mimes:xlsx,xls',
    ]);

    Excel::import(new ProdukImport, $request->file('file'));

    return back()->with('success', 'Data berhasil diimport.');
}

๐Ÿ“ 6. Blade View Upload

<form action="{{ route('produk.import') }}" method="POST" enctype="multipart/form-data">
  @csrf
  <input type="file" name="file">
  <button type="submit">Import</button>
</form>

๐Ÿง  Tips & Best Practice

AspekRekomendasi
Validasi dataPastikan struktur Excel konsisten
Cek duplikasiGunakan unique key sebelum insert
Penamaan dokumenGunakan _id yang unik (untuk CouchDB)
Gunakan queueUntuk import besar, jalankan via queue worker
Audit data masukSimpan log siapa upload dan kapan

๐Ÿงฐ Elektra Network Vision โ€“ Integrasi Laravel + NoSQL

Kami bantu:

  • Migrasi data Excel ke MongoDB dan CouchDB
  • Optimasi performa insert + validasi
  • UI upload data berbasis role & secure

๐ŸŒ elektranetworkvision.com โ€” Solusi Laravel + NoSQL handal untuk aplikasi data besar dan cepat.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

Website Dinamis vs. Statis: Mana yang Tepat untuk Bisnis Anda?

Dalam proses membangun kehadiran digital yang kuat, banyak pemilik bisnis dihadapkan pada pertanyaan penting: Haruskah…

Aplikasi Web Penjualan Motor & Mobil: Inovasi Bisnis Otomotif

Aplikasi Web Penjualan Motor & Mobil: Inovasi Bisnis Otomotif ๐Ÿ›ต Menggebrak Pasar Otomotif: Aplikasi Web…

๐Ÿ“„ Belajar Laravel dari Nol โ€“ Part 11: Export Data ke Excel dan PDF

Export data ke file Excel (.xlsx) dan PDF (.pdf) sangat dibutuhkan dalam aplikasi berbasis data,…