Geokit-Rails 项目教程
geokit-railsOfficial Geokit plugin for Rails/ActiveRecord. Provides location-based goodness for your Rails app. Requires the Geokit gem.项目地址:https://gitcode.com/gh_mirrors/ge/geokit-rails
1. 项目的目录结构及介绍
Geokit-Rails 项目的目录结构如下:
geokit-rails/
├── Gemfile
├── MIT-LICENSE
├── README.md
├── Rakefile
├── geokit-rails.gemspec
├── config/
│ └── initializers/
│ └── geokit_rails.rb
├── lib/
│ ├── geokit-rails/
│ │ ├── acts_as_mappable.rb
│ │ ├── ip_geocode_lookup.rb
│ │ └── ...
│ └── geokit-rails.rb
├── test/
│ ├── acts_as_mappable_test.rb
│ ├── ip_geocode_lookup_test.rb
│ └── ...
└── ...
目录介绍:
Gemfile
:定义了项目所需的 gem 依赖。MIT-LICENSE
:项目的 MIT 许可证文件。README.md
:项目的说明文档。Rakefile
:用于定义 Rake 任务。geokit-rails.gemspec
:gem 的规范文件。config/initializers/geokit_rails.rb
:项目的配置初始化文件。lib/geokit-rails/
:包含项目的主要功能实现文件。test/
:包含项目的测试文件。
2. 项目的启动文件介绍
Geokit-Rails 项目的启动文件主要是 lib/geokit-rails.rb
,它负责加载项目的核心功能和相关依赖。
# lib/geokit-rails.rb
require 'geokit'
require 'geokit-rails/version'
require 'geokit-rails/acts_as_mappable'
require 'geokit-rails/ip_geocode_lookup'
require 'geokit-rails/geocoder_control'
require 'geokit-rails/multi_geocoder'
require 'geokit-rails/adapters/abstract'
require 'geokit-rails/adapters/mysql'
require 'geokit-rails/adapters/postgresql'
require 'geokit-rails/adapters/sqlite'
3. 项目的配置文件介绍
Geokit-Rails 项目的配置文件是 config/initializers/geokit_rails.rb
,它包含了项目的各种配置选项。
# config/initializers/geokit_rails.rb
Geokit::Geocoders::GoogleGeocoder.api_key = 'YOUR_GOOGLE_API_KEY'
Geokit::Geocoders::BingGeocoder.api_key = 'YOUR_BING_API_KEY'
Geokit::Geocoders::YahooGeocoder.key = 'YOUR_YAHOO_API_KEY'
Geokit::Geocoders::GeocoderDotUs.key = 'YOUR_GEOCODER_DOT_US_API_KEY'
Geokit::Geocoders::provider_order = [:google, :bing, :yahoo, :geocoder_us]
Geokit::Geocoders::ip_provider_order = [:geo_plugin, :ip]
Geokit::Geocoders::timeout = 3
Geokit::Geocoders::proxy = 'http://user:pass@host:port'
Geokit::Geocoders::logger = Rails.logger
配置选项介绍:
Geokit::Geocoders::GoogleGeocoder.api_key
:设置 Google Geocoding API 的 API 密钥。Geokit::Geocoders::BingGeocoder.api_key
:设置 Bing Geocoding API 的 API 密钥。Geokit::Geocoders::YahooGeocoder.key
:设置 Yahoo Geocoding API 的 API 密钥。Geokit::Geocoders::GeocoderDotUs.key
:设置 Geocoder.us API 的 API 密钥。Geokit::Geocoders::provider_order
:设置 Geocoding 服务的优先级顺序。Geokit::Geocoders::ip_provider_order
:设置 IP Geocoding 服务的优先级顺序。Geokit::Geocoders::timeout
:设置 Geocoding 请求的超时时间。`Geokit::Geocoders::
geokit-railsOfficial Geokit plugin for Rails/ActiveRecord. Provides location-based goodness for your Rails app. Requires the Geokit gem.项目地址:https://gitcode.com/gh_mirrors/ge/geokit-rails