zalanihir/country-state-city

Laravel 包,提供国家、州和城市的标志

v1 2024-02-04 10:16 UTC

This package is auto-updated.

Last update: 2024-09-29 11:36:48 UTC


README

大家好,我创建了一个用于国家、州和城市的种子包。您可以在Laravel项目中安装和使用它。如果您使用此包,请给它一个星标,此包是免费的。将来,我将添加国家代码和电话缩写。

这个库是什么?

这是一个名为CSC(国家-州-城市种子器)的库。在开发过程中,我经常遇到这样的问题:在哪里可以获取种子文件?如何管理它?它们之间有联系吗?

因此,我进行了谷歌搜索,找到了一些种子文件,并在这些文件的帮助下,创建了此库,其中已经包含了它们模型之间的关系。

为什么你需要这个?

如果你的项目需要国家、州和城市的下拉菜单,而你又不知道如何实现,我已经为它创建了一个库。以下是一些要点。

  • 开源免费

  • 易于安装

  • 易于修改

  • 模型已经存在关系

安装方法

  • 要安装此包,您需要使用composer安装。

注意

确保您没有国家、州和城市的模型或迁移,然后删除它,否则这将创建冲突。

如何安装?

composer require zalanihir/country-state-city

对于发布者

对于Laravel 10或Laravel 9

您必须在app.php中的providers部分添加以下行。

\Nihir\CountryStateCity\CountryStateCityServiceProvider::class,

对于Laravel 11

您必须在启动文件夹中的providers.php中添加以下行。

\Nihir\CountryStateCity\CountryStateCityServiceProvider::class,

发布命令

php artisan vendor:publish --provider="Nihir\CountryStateCity\CountryStateCityServiceProvider"

前面的命令会在您的项目中发布文件。

现在,您可以简单地运行以下命令。

php artisan optimize:clear
php artisan config:cache

这将清除您的缓存

php artisan migrate

这将将表迁移到数据库中。

现在,在您的DataBaseSeeder.php文件中添加以下行。

$this->call(CountryStateCityTableSeeder::class);

现在简单运行以下命令以运行数据库的种子。

php artisan db:seed

CountryModel、CityModel和StateModel已经存在关系,您不必担心关系,而且我更新了Country Model、迁移和DataProvider,我还添加了iso2、iso3、numcode、国家电话码和国家旗帜。

国家旗帜

为了使用国家旗帜,您必须首先使用以下命令获取旗帜。

php artisan csc:publish-flags

在命令之后,您将看到在您的public文件夹中添加了一个名为flags的新文件夹。现在,您只需使用它即可。这里我将提供一个基本示例,您当然可以根据需要对其进行自定义。

use App\Models\Country;

$countries = Country::get();

@foreach ($countries as $country)
  <img  src="{{ asset('flags/'.$country->iso2.'.png') }}"  alt="{{ $country->name }}" />
@endforeach

友好的提醒

如果您对此包有任何疑问,遇到了错误或需要支持以更新,请直接发送电子邮件至testnihir@gmail.com

我从一个名为https://flagsapi.com/的网站获取了所有旗帜,大小为64。这将花费很多时间来管理,而且一些国家的旗帜我尚未获取。我将尽快更新它们。如果您想更新它并为此项目做出贡献,您也可以这样做。这将对我非常有帮助。谢谢。

与我联系

Twitter URL

LinkedIn URL

Instagram URL

Email

Packagist

贡献者

感谢所有为这个项目做出贡献的可爱的人们!

想要贡献吗?请查看我们的贡献指南

其他项目

查看我的管理面板