Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 config
Octocat-spinner-32 lib
Octocat-spinner-32 test
Octocat-spinner-32 .document
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .rvmrc
Octocat-spinner-32 CHANGELOG
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rdoc
Octocat-spinner-32 Rakefile
Octocat-spinner-32 VERSION
Octocat-spinner-32 mongoid_acts_as_tree.gemspec
README.rdoc

mongoid-acts_as_tree

This is an implementation of a tree structure for Mongoid.

Installation

Install as gem

gem install mongoid_acts_as_tree

Usage

Enable the tree functionality by declaring acts_as_tree on your model

class Category
  include Mongoid::Document
  include Mongoid::Acts::Tree

  field :name, :type => String

  acts_as_tree
end

The method accepts :parent_id_field, :path_field, :depth_field, :order as a hash.

:parent_id_field, :path_field, :depth_field => override the default field names
:order => control the order (format ['value', 'asc'] or [['field_1', 'asc'], ['field_2', 'desc']])

Check the test_tree.rb for examples.

About bugs

Use it. If you find any bugs, contact me (if possible with a test case) or patch it yourself (see next section).

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don't break it in a future version unintentionally.

  • 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)

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

Copyright

Copyright © 2009 Jakob Vidmar. See LICENSE for details.

Something went wrong with that request. Please try again.