mongomapper_id2
It’s a MongoMapper’s plugin to add auto incremented id in MongoMapper’s documents.
This gem was based on this post ihswebdesign.com/blog/autoincrement-in-mongodb-with-ruby/
Installation
# https://rubygems.org/gems/mongomapper_id2
$ sudo gem install mongomapper_id2
Adding mongomapper_id2 gem
# Gemfile
gem 'mongomapper_id2'
Adding mongomapper_id2 in a document
# app/models/movie.rb
class Movie
include MongoMapper::Document
key :title, String
# Here is the mongomapper_id2
auto_increment!
end
Usage
movie = Movie.create(:title => 'The Simpsons Movie')
movie.id # BSON::ObjectId('4d1d150d30f2246bc6000001')
# Here is the mongomapper_id2
movie.id2 # 1
movie2 = Movie.create(:title => 'Pirates of Silicon Valley')
movie2.id2 # 2
Overriding the default id
If you want to override the default id, just add the option “:override => true”
# app/models/movie.rb
class Movie
include MongoMapper::Document
key :title, String
# Here is the mongomapper_id2
auto_increment! :override => true
end
Activating this option the default id will be replaced by an auto incremented id
movie = Movie.create(:title => 'Pirates of Silicon Valley')
movie.id # 1
Do you want to improve mongomapper_id2
You’re welcome to make your contributions and send them as a pull request
Development
$ gem install bundler (if you don't have it)
$ bundle install
$ bundle exec rake
Test
$ rake test
Copyright
See LICENSE for details