nguyenquang2302 / vietnam-maps
越南地区数据库。
dev-main
2023-09-11 04:07 UTC
Requires
- php: ^7.2|^8
- guzzlehttp/guzzle: ^7.0.1
- illuminate/console: ^5.8|^6|^7|^8|^9
- illuminate/database: ^5.8|^6|^7|^8|^9
- illuminate/support: ^5.8|^6|^7|^8|^9
- maatwebsite/excel: ^3.1
This package is not auto-updated.
Last update: 2024-09-24 07:47:36 UTC
README
越南地区数据库。
数据直接来自越南国家统计局。
安装
composer require Ndq/vietnam-maps
解压缩
方法1
通过命令直接解压缩
php artisan vietnam-map:install
方法2
复制文件config和迁移
php artisan vendor:publish --provider="Ndq\VietnamMap\VietnamMapServiceProvider"
自定义config和迁移
- 重命名表
打开文件config/vietnam-maps.php
和配置
'tables' => [ 'provinces' => 'provinces', 'districts' => 'districts', 'wards' => 'wards', ],
- 重命名列
打开文件config/vietnam-maps.php
和配置
'columns' => [ 'name' => 'name', 'gso_id' => 'gso_id', 'province_id' => 'province_id', 'district_id' => 'district_id', ],
- 添加列
打开以下迁移文件并按需自定义
database/migrations/{datetime}_create_vietnam_maps_table.php
运行迁移
php artisan migrate
下载并导入数据库
php artisan vietnam-map:download
使用模型使用
- 获取所有省份、区、街道
use Ndq\VietnamMap\Models\Province; use Ndq\VietnamMap\Models\District; use Ndq\VietnamMap\Models\Ward; class DevController extends Controller { ... public function dev() { $provinces = Province::all(); $districts = District::all(); $wards = Ward::all(); ... } }
- 使用关系获取数据
use Ndq\VietnamMap\Models\Province; class DevController extends Controller { ... public function dev() { $province = Province::first(); $districts = $province->districts; ... } }
- Province.php中的关系
class Province extends Model { ... public function districts() { return $this->hasMany(District::class); } }
- 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); } }
- Ward.php中的关系
class Ward extends Model { ... public function district() { return $this->belongsTo(District::class, config('vietnam-maps.columns.district_id'), 'id'); } }
变更日志
请参阅CHANGELOG获取更多关于最近更改的信息。
安全
如果您发现任何安全相关问题,请通过电子邮件Ndqdev@gmail.com报告,而不是使用问题跟踪器。
致谢
参考资料
许可证
Laravel框架是开源软件,受MIT许可证许可。