Mongoid Spacial 项目教程
1. 项目的目录结构及介绍
Mongoid Spacial 项目的目录结构如下:
mongoid_spacial/
├── lib/
│ ├── mongoid_spacial/
│ │ ├── document.rb
│ │ ├── fields.rb
│ │ ├── geo_near.rb
│ │ ├── index.rb
│ │ ├── point.rb
│ │ ├── polygon.rb
│ │ ├── shape.rb
│ │ └── version.rb
│ └── mongoid_spacial.rb
├── spec/
│ ├── mongoid_spacial_spec.rb
│ └── spec_helper.rb
├── .gitignore
├── .rspec
├── .ruby-gemset
├── .ruby-version
├── Gemfile
├── LICENSE.txt
├── README.md
├── Rakefile
└── mongoid_spacial.gemspec
目录介绍
lib/
:包含项目的主要代码文件。mongoid_spacial/
:包含与 Mongoid Spacial 扩展相关的具体实现文件。mongoid_spacial.rb
:项目的入口文件。
spec/
:包含项目的测试文件。mongoid_spacial_spec.rb
:针对 Mongoid Spacial 的测试文件。spec_helper.rb
:测试辅助文件。
.gitignore
:Git 忽略文件配置。.rspec
:RSpec 配置文件。.ruby-gemset
:Ruby 环境配置文件。.ruby-version
:Ruby 版本配置文件。Gemfile
:项目的依赖管理文件。LICENSE.txt
:项目的许可证文件。README.md
:项目的说明文档。Rakefile
:Rake 任务配置文件。mongoid_spacial.gemspec
:项目的 gem 配置文件。
2. 项目的启动文件介绍
项目的启动文件是 lib/mongoid_spacial.rb
,它负责加载 Mongoid Spacial 扩展所需的所有文件,并初始化相关功能。
require "mongoid_spacial/version"
require "mongoid_spacial/document"
require "mongoid_spacial/fields"
require "mongoid_spacial/geo_near"
require "mongoid_spacial/index"
require "mongoid_spacial/point"
require "mongoid_spacial/polygon"
require "mongoid_spacial/shape"
module Mongoid
module Spacial
end
end
3. 项目的配置文件介绍
项目的配置文件主要包括 Gemfile
和 mongoid_spacial.gemspec
。
Gemfile
Gemfile
用于管理项目的依赖库。
source 'https://rubygems.org'
gem 'mongoid_spacial'
mongoid_spacial.gemspec
mongoid_spacial.gemspec
是项目的 gem 配置文件,定义了 gem 的名称、版本、作者、依赖等信息。
Gem::Specification.new do |spec|
spec.name = "mongoid_spacial"
spec.version = Mongoid::Spacial::VERSION
spec.authors = ["Ryan Ong", "Arthur Neves"]
spec.email = ["ryan@example.com", "arthur@example.com"]
spec.summary = %q{A Mongoid Extention that simplifies and adds support for MongoDB Geo Spacial Calculations}
spec.description = %q{Mongoid Spacial simplifies and adds support for MongoDB Geo Spacial Calculations}
spec.homepage = "https://github.com/ryanong/mongoid_spacial"
spec.license = "MIT"
spec.files = `git ls-files`.split($/)
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
spec.require_paths = ["lib"]
spec.add_dependency "activesupport", "~> 3.0"
spec.add_dependency "mongoid", "< 3.0.0", ">= 2.1.0"
end
以上是 Mongoid Spacial 项目的目录结构、启动文件和配置文件的介绍。希望这份教程能帮助你更好地理解和使用该项目。