lucenarenato/laravel-cidadesbr

为 Laravel 定制的 cidadesbr Artesao

v3.0 2024-05-19 03:57 UTC

This package is auto-updated.

Last update: 2024-09-19 04:42:15 UTC


README

在您的 Laravel 项目的数据库中拥有巴西城市表

Latest Stable Version Total Downloads Maintainer License

如何使用

添加包

$ composer require lucenarenato/laravel-cidadesbr

config/app.php 文件中添加 Provider

// file START ommited
'providers' => [
    // other providers ommited
    'Lucenarenato\Providers\CidadesServiceProvider',
],
// file END ommited

导入 migrations/seeds

$ php artisan vendor:publish --provider="Lucenarenato\Providers\CidadesServiceProvider"

执行

$ composer dump-auto
$ php artisan migrate
$ php artisan db:seed --class="CidadesSeeder"

模型 Lucenarenato\Cidade

Lucenarenato\Cidade 模型已准备好使用

<?php

namespace Lucenarenato;

use Illuminate\Database\Eloquent\Model;

class Cidade extends Model{

    public $timestamps = false;

    protected $fillable = ['nome', 'uf'];
}

路由

以下路由已准备好使用

Route::get('/ufs/', function($uf = null){
    return response()->json(\Lucenarenato\Cidade::select('uf')->distinct('uf')->orderBy('uf')->get());
});

Route::get('/cidades/{uf}', function($uf = null){
    return response()->json(\Lucenarenato\Cidade::where('uf', $uf)->orderBy('nome')->get());
});

jQuery 辅助工具

如果您需要,一个插件可用于通过 AJAX 加载 selectBoxes。

添加 scripts.js

<script src="/vendor/lucenarenato/cidades/js/script.js"></script>

HTML

<select id="uf" default="MG"></select>
<select id="cidade"></select>

JS

$('#uf').ufs({
    onChange: function(uf){
        $('#cidade').cidades({uf: uf});
    }
});