Project

ibge-ruby

0.0
No release in over a year
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
 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