edi-prasetyo/indonesia-location
Composer 安装命令:
composer require edi-prasetyo/indonesia-location
包简介
Indonesia administrative region database for Laravel
README 文档
README
edi-prasetyo/indonesia-location adalah package Laravel untuk menyediakan data wilayah administratif Indonesia (Provinsi, Kabupaten/Kota, Kecamatan, Desa) lengkap dengan relasi database dan model Eloquent.
Package ini dirancang untuk:
- Laravel 11 ke atas
- Import data wilayah Indonesia dari file JSON
- Relasi internal berbasis
id(bukan hanya kode) - Siap dipakai langsung oleh developer
✨ Fitur
- ✅ Data lengkap: Provinsi, Kabupaten/Kota, Kecamatan, Desa
- ✅ Relasi internal (
province_id,regency_id,district_id) - ✅ Tetap menyimpan
coderesmi wilayah Indonesia - ✅ Eloquent Model siap pakai
- ✅ Artisan command untuk install & import data
- ✅ Bisa digunakan untuk Web & Mobile API
📦 Instalasi
Install package via Composer:
composer require edi-prasetyo/indonesia-location
Package ini mendukung auto-discovery, tidak perlu menambahkan Service Provider secara manual.
1️⃣ Publish file migration
php artisan vendor:publish --tag=indonesia-location-migrations
2️⃣ Jalankan migration
php artisan migrate
🚀 Import Data Wilayah Indonesia
Jalankan command berikut:
php artisan indonesia-location:install
Struktur Database
provinces
| column | type |
|---|---|
| id | bigint |
| code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
regencies
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| code | string |
| province_code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
districts
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| regency_id | bigint (FK) |
| code | string |
| province_code | string |
| regency_code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
villages
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| regency_id | bigint (FK) |
| district_id | bigint (FK) |
| code | string |
| province_code | string |
| regency_code | string |
| district_code | string |
| name | string |
| postal_code | string |
| latitude | decimal |
| longitude | decimal |
📘 Penggunaan Model
- use EdiPrasetyo\IndonesiaLocation\Models\Province;
- use EdiPrasetyo\IndonesiaLocation\Models\Regency;
- use EdiPrasetyo\IndonesiaLocation\Models\District;
- use EdiPrasetyo\IndonesiaLocation\Models\Village;
Ambil semua provinsi
use EdiPrasetyo\IndonesiaLocation\Models\Province; $provinces = Province::all();
Dengan relasi
$provinces = Province::with('regencies.districts.villages')->get();
Contoh pencarian
$aceh = Province::where('code', '11')->first(); $kabupaten = $aceh->regencies;
🔗 Relasi Eloquent
- Province → hasMany → Regencies
- Regency → hasMany → Districts
- District → hasMany → Villages
Semua relasi menggunakan foreign key berbasis ID untuk performa optimal.
⚙️ Kebutuhan Sistem
- PHP 8.2+
- Laravel 11 atau lebih baru
- Database MySQL / PostgreSQL
📄 Lisensi
Package ini dilisensikan di bawah MIT License.
👨💻 Author
Edi Prasetyo GitHub: https://github.com/edi-prasetyo
🤝 Kontribusi
Pull request & issue sangat diterima. Silakan fork repository ini dan ajukan perubahan.
⭐ Penutup
Jika package ini membantu, jangan lupa beri ⭐ di GitHub 🙌
Happy coding 🚀
edi-prasetyo/indonesia-location 适用场景与选型建议
edi-prasetyo/indonesia-location 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 17 次下载、GitHub Stars 达 1, 最近一次更新时间为 2025 年 12 月 16 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 edi-prasetyo/indonesia-location 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 edi-prasetyo/indonesia-location 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 17
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 25
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-12-16