Database of Vietnam's area.
Data are taken directly from the General Statistics Office of Vietnam.
composer require hoangphi/vietnam-mapsExtract directly via command:
php artisan vietnam-map:installphp artisan vendor:publish --provider="HoangPhi\VietnamMap\VietnamMapServiceProvider"- Rename table
Open file config/vietnam-maps.php and config:
'tables' => [
'provinces' => 'provinces',
'districts' => 'districts',
'wards' => 'wards',
],- Rename column
Open file config/vietnam-maps.php and config:
'columns' => [
'name' => 'name',
'gso_id' => 'gso_id',
'province_id' => 'province_id',
'district_id' => 'district_id',
],- Add column
Open the following migration files and customize if you need:
database/migrations/{datetime}_create_vietnam_maps_table.phpphp artisan migratephp artisan vietnam-map:download- Get all provinces, districts, wards
use HoangPhi\VietnamMap\Models\Province;
use HoangPhi\VietnamMap\Models\District;
use HoangPhi\VietnamMap\Models\Ward;
class DevController extends Controller
{
...
public function dev()
{
$provinces = Province::all();
$districts = District::all();
$wards = Ward::all();
...
}
}- Get data using relationship
use HoangPhi\VietnamMap\Models\Province;
class DevController extends Controller
{
...
public function dev()
{
$province = Province::first();
$districts = $province->districts;
...
}
}- Relation in Province.php
class Province extends Model
{
...
public function districts()
{
return $this->hasMany(District::class);
}
}- Relation in District.php
class District extends Model
{
...
public function province()
{
return $this->belongsTo(Province::class, config('vietnam-maps.columns.province_id'), 'id');
}
public function wards()
{
return $this->hasMany(Ward::class);
}
}- Relation in Ward.php
class Ward extends Model
{
...
public function district()
{
return $this->belongsTo(District::class, config('vietnam-maps.columns.district_id'), 'id');
}
}Please see CHANGELOG for more information what has changed recently.
If you discover any security-related issues, please email [email protected] instead of using the issue tracker.
The Laravel framework is open-sourced software licensed under the MIT license.