Project

ibge-ruby

0.0
No commit activity in last 3 years
No release in over 3 years
Wrapper do serviço do IBGE para Ruby.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 2.0
~> 11.1.3
~> 0.14.1
~> 3.10.0
~> 0.18
~> 3.0
~> 3.14.0

Runtime

~> 2.0.2
 Project Readme

IBGE Ruby

Gem Version

A gem ibge-ruby permite você integrar a sua aplicação Ruby on Rails com todos os serviços de localidade fornecidos pelo IBGE de maneira simples e rápida.

Instalação

Adicione essa linha no Gemfile da sua aplicação:

gem 'ibge-ruby'

E execute:

$ bundle

Ou instale diretamente com o comando:

$ gem install ibge-ruby

Métodos

Cada link direciona para a documentação do IBGE com a descrição do método, entrada e saída. Ao lado é a referência de como utilizá-lo com a gem.

Observações

  1. Nas referências dos serviços, é possível enviar um ou mais parâmetros delimitados pelo caractere | (pipe). Na gem, ao utilizar serviços em que é possível enviar vários parâmetros (quase todos), utilize o formato de array.

Serviço IBGE: 1|2|3

Gem IBGE Ruby: [1, 2, 3] ou ['1', '2', '3'].

* Em alguns casos também é possível passar siglas. Verifique a seção Pesquisa por identificador (ID), sigla ou array de IDs/siglas.

  1. No momento, esta gem não oferece suporte aos query parameters orderBy e view. Contudo, no Ruby, é possível simular o orderBy da seguinte forma:
# Sem order by
regioes = IBGE::Regiao.obter_regioes.map(&:nome) #=> ['Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']

# Comportamento similar ao orderBy com Ruby
regioes = IBGE::Regiao.obter_regioes.sort_by(&:nome).map(&:nome) #=> ['Centro-Oeste', 'Nordeste', 'Norte', 'Sudeste', 'Sul']

Utilização

Abaixo estão alguns exemplos de utilização da gem. Verifique a documentação para uma referência mais completa.

Países

require 'ibge'

paises = IBGE::Pais.obter_paises
paises.map(&:nome) #=> ['Afeganistão', 'Albânia', 'Argélia', 'Andorra', 'Angola'...]

Regiões

regioes = IBGE::Regiao.obter_regioes
regioes.map(&:nome) #=> ['Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']
regioes.first #=> #<IBGE::Regiao:0x0000555f7e83de38 @id=1, @nome="Norte", @sigla="N">

Pesquisa por identificador (ID), sigla ou array de IDs/siglas

Em qualquer módulo que possua um método que faça referência aos recursos de Região ou UFs, é possível pesquisar pelo ID, sigla ou um array de IDs/siglas.

IBGE::Municipio.municipios_por_regiao('NE') #=> mesma coisa de IBGE::Municipio.municipios_por_regiao(2)
IBGE::Municipio.municipios_por_regiao(['N', 'NE']) #=> mesma coisa de IBGE::Municipio.municipios_por_regiao([1, 2])

IBGE::Distrito.distritos_por_uf('CE') #=> mesma coisa de IBGE::Distrito.distritos_por_uf(23)
IBGE::Distrito.distritos_por_uf(['BA', 'CE]) #=> mesma coisa de IBGE::Distrito.distritos_por_uf([29, 23])

Contribuindo

  1. Faça um fork
  2. Crie uma branch com a funcionalidade (git checkout -b nova_funcionalidade)
  3. Faça um commit das suas mudanças (git commit -am "[add] nova funcionalidade")
  4. Faça um push para a branch (git push origin nova_funcionalidade)
  5. Crie um pull request