No commit activity in last 3 years
No release in over 3 years
IPGeoBase.ru for mongoid 3/4
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 1.0.21
>= 2.14.0

Runtime

< 5.0, >= 3.0
 Project Readme

IPGeoBase¶ ↑

Russia and Ukraine geoip lookup with DB from ipgeobase.ru for Mongoid 3/4

WARNING: 1.0 breaks backward compatibility. For mongoid 2 use ~> 0

Гем для работы с архивом с сайта ipgeobase.ru, содержащим базу местонахождений российских и украинских ip-адресов (с точностью до города) для MongoDB (Mongoid 3/4).

Installation¶ ↑

Add to Gemfile:

gem "rs_ipgeobase_mongoid"

Install required gems:

bundle install

Upload new database¶ ↑

  • Update cities and regions. Downloads file if it’s not present in tmp/cities.txt

    rake ipgeobase:cities
    
  • city id’s are not changed on DB update and can be used as foreign keys

  • Update geo ips. Downloads file if it’s not present in tmp/cidr_optim.txt

    rake ipgeobase:ips
    

Methods¶ ↑

Search for city by IP (Russia and Ukraine only):

После того, как выполнены все предыдущие шаги можно искать город по IP адресу.

Работает только для РФ и Украины. Если город не найден, метод вернет nil.

> geo = Ipgeobase::find_region_by_ip('95.170.177.170')
> pp geo
=> #<Ipgeobase::City _id: 5059d68ee779891c72000201, _type: nil, geo_id: 1428, city: "Красноярск",
    region: "Красноярский край", district: "Сибирский федеральный округ", lat: 56.001251, lon: 92.88559,
    country_id: BSON::ObjectId('5059d68de779891c72000001')>
> geo.city
=> "Красноярск"
> geo.region
=> "Красноярский край"
> geo.district
=> "Сибирский федеральный округ"
> geo.country.name
=> "Россия"
> geo.country.code
=> "RU"