Skip to content

gucki/sequel_mappable

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

About

Mappable provides geo distance-based filters and distance calculation functionality for model. It requires the geokit gem and was heavily inspired by the geokit-rails gem.

Install

Simply install it as any other gem:

gem install sequel_mappable

Or when using bundler, add it got your Gemfile:

gem sequel_mappable

This should also install the geokit gem.

Quick Start

In your model:

class User < Sequel::Model
  plugin :mappable
end

In your migrations:

class AddGeoDataToUser < Sequel::Migration
  def up
    alter_table :users do
      add_column :lng, Float
      add_column :lat, Float
    end
  end

  def down
    alter_table :users do
      drop_column :lng
      drop_column :lat
    end
  end
end

Now add some records with valid geo data.

In your controller you can then do:

def index
  users_near_to_me = User.f_origin(User[1], 10)
end

Filters

Please have a look at the source to get a full list of all available functionality.

Todo

  • Source documentation (rdoc)

  • Source cleanup (no hardcoding of column names)

  • Better support for :km, :miles, :sphere, :flat, etc.

  • Tests

Contributing

If you’d like to contribute a feature or bugfix: Thanks! To make sure your fix/feature has a high chance of being included, please read the following guidelines:

  1. Fork the project.

  2. Make your feature addition or bug fix.

  3. Add tests for it. This is important so we don’t break anything in a future version unintentionally.

  4. Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  5. Send me a pull request. Bonus points for topic branches.

About

Mappable provides geo distance-based filters and distance calculation functionality for model.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages