placecodex/laravel-countries

所有国家的列表,针对 Laravel 8 优化

3.1.1 2020-11-22 06:33 UTC

This package is not auto-updated.

Last update: 2024-09-23 23:44:19 UTC


README

Latest Version on Packagist Total Downloads

非常简短的描述

Laravel-Countries 是一个包含您开始新项目所需所有内容的包,其中包括所有国家、信息和翻译。 所有这些都针对 Laravel 8 进行了优化。

该包直接将所有数据提供到您的数据库中,允许您以简单和常规的方式链接到数据库中的任何其他表。

地质和拓扑地图

在许多其他信息中,您还能够绘制国家地图

支持的语言?

要求

安装

您可以通过 composer 安装此包

composer require lwwcas/laravel-countries
composer dump-autoload
  • 在 database\seeds\DatabaseSeeder.php 的 run 函数中将此行放入数据库
$this->call(\Lwwcas\LaravelCountries\Database\Seeders\LcDatabaseSeeder::class);
  • 运行迁移
php artisan migrate
  • 运行种子或仅运行 LcDatabaseSeeder 类
php artisan db:seed

使用方法

您可以通过简单的查询访问数据库中的所有信息

use  Lwwcas\LaravelCountries\Models\Country;

Country::whereIso('BR')->first();
Country::whereIsoAlpha3('BRA')->first();
Country::whereSlug('brasil')->first();

如何集成到我的项目中?

在您的表中,您可以简单地添加外键。

仅此即可允许您与国家表建立关系

$table->integer('lc_country_id')->unsigned();

虽然这是可选的,但 强烈推荐 您使用 Laravel 提供的 外键约束

$table->foreign('lc_country_id')->references('id')->on('lc_countries');

用户表的实现示例

要与区域表建立关系

$table->tinyInteger('lc_region_id')->unsigned();
$table->foreign('lc_region_id')->references('id')->on('lc_regions');

仔细查看模型,看看这个包是如何使其变得容易的

国家

国家翻译

国家地区

国家地区翻译

国家地理

示例数据

{
  "id": 30,
  "lc_region_id": 2,
  "uuid": "343d2082-f6fb-42e6-ac7a-f78dad39de31",
  "slug": "brazil",
  "name": "Brazil",
  "official_name": "Federative Republic of Brazil",
  "iso_alpha_2": "BR",
  "iso_alpha_3": "BRA",
  "iso_numeric": 76,
  "geoname_id": "3469034",
  "international_phone": "55",
  "languages": "[pt]",
  "tld": "[.br]",
  "wmo": "BZ",
  "emoji": {
    "img": "🇧🇷",
    "uCode": "U+1F1E7 U+1F1F7"
  },
  "color_hex": [
    "#008000",
    "#ffff00"
  ],
  "color_rgb": [
    "0,128,0",
    "255,255,0"
  ],
  "coordinates": {
    "latitude": {
      "classic": "10 00 S",
      "desc": "-10.81045150756836"
    },
    "longitude": {
      "classic": "55 00 W",
      "desc": "-52.97311782836914"
    }
  },
  "coordinates_limit": {
    "latitude": {
      "max": "5.266667",
      "min": "-33.733333"
    },
    "longitude": {
      "max": "-28.85",
      "min": "-73.75"
    }
  },
  "visible": true,
  "translations": [
    {
      "id": 30,
      "lc_country_id": 30,
      "name": "Brazil",
      "slug": "brazil",
      "locale": "en"
    }
  ]
}

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 变更日志

贡献

有关详细信息,请参阅 贡献

安全

如果您发现任何安全相关的问题,请通过电子邮件 lwwcas@gmail.com 报告,而不是使用问题跟踪器。

鸣谢

许可

MIT 许可证(MIT)。有关更多信息,请参阅 许可文件