我试图使用MaxMindDBgem来使用新的maxmind v2 geoip数据库。
我已经将gem添加到gemfile并安装了它。但当我试图在类或控制台中要求它时,会出现一个cannot load such file -- maxminddb
错误:
2.3.1 :004 > require 'maxminddb'
LoadError: cannot load such file -- maxminddb
代码本身似乎包装在一个
MaxMindDB
模块中。我真的想说:db = MaxMindDB.new('geoip/GeoLite2-City.mmdb')
ret = db.lookup('74.125.225.224')
现在我得到一个未初始化的常量错误:
db = MaxMindDB.new('geoip/GeoLite2-City.mmdb')
NameError: uninitialized constant MaxMindDB
知道我错在哪里吗?看来宝石应该有用了。
最佳答案
你有这个文件吗:GeoLite2-City.mmdb
您需要获取文件,然后使用以下方法初始化数据库:db = MaxMindDB.new('geoip/GeoLite2-City.mmdb')
您可以在此处下载数据库文件:http://dev.maxmind.com/geoip/geoip2/geolite2/#Databases
关于ruby-on-rails - Ruby on Rails无法加载此类文件-maxminddb,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43300112/