lucenarenato/laravel-cidadesbr

Artesao cidadesbr para Laravel

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

This package is auto-updated.

Last update: 2024-11-19 05:03:30 UTC


README

Tenha no banco de dados do seu projeto Laravel a tabela de cidades brasileiras

Latest Stable Version Total Downloads Maintainer License

Como usar

Adicione o package

$ composer require lucenarenato/laravel-cidadesbr

Adicione o Provider no arquivo config/app.php

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

Importe migrations/seeds

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

Execute

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

Model Lucenarenato\Cidade

O model Lucenarenato\Cidade já está disponível para uso:

<?php

namespace Lucenarenato;

use Illuminate\Database\Eloquent\Model;

class Cidade extends Model{

    public $timestamps = false;

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

Rotas

As rotas abaixo já estão disponíveis para uso:

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 helper

Se desejar, um plugin está disponível para carregar seus selectBoxes via ajax.

Adicione o 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});
    }
});