Mercurial > hg > soundsoftware-site
view vendor/plugins/awesome_nested_set/README.rdoc @ 1082:997f6d7738f7 bug_531
In repo controller entry action, show the page for the file even if it's binary (so user still has access to history etc links). This makes it possible to use the entry action as the default when a file is clicked on
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Thu, 22 Nov 2012 18:04:17 +0000 |
parents | 513646585e45 |
children |
line wrap: on
line source
= AwesomeNestedSet Awesome Nested Set is an implementation of the nested set pattern for ActiveRecord models. It is replacement for acts_as_nested_set and BetterNestedSet, but awesomer. == What makes this so awesome? This is a new implementation of nested set based off of BetterNestedSet that fixes some bugs, removes tons of duplication, adds a few useful methods, and adds STI support. == Installation If you are on Rails 2.1 or later: script/plugin install git://github.com/collectiveidea/awesome_nested_set.git == Usage To make use of awesome_nested_set, your model needs to have 3 fields: lft, rgt, and parent_id: class CreateCategories < ActiveRecord::Migration def self.up create_table :categories do |t| t.string :name t.integer :parent_id t.integer :lft t.integer :rgt end end def self.down drop_table :categories end end Enable the nested set functionality by declaring acts_as_nested_set on your model class Category < ActiveRecord::Base acts_as_nested_set end Run `rake rdoc` to generate the API docs and see CollectiveIdea::Acts::NestedSet::SingletonMethods for more info. == View Helper The view helper is called #nested_set_options. Example usage: <%= f.select :parent_id, nested_set_options(Category, @category) {|i| "#{'-' * i.level} #{i.name}" } %> <%= select_tag 'parent_id', options_for_select(nested_set_options(Category) {|i| "#{'-' * i.level} #{i.name}" } ) %> See CollectiveIdea::Acts::NestedSet::Helper for more information about the helpers. == References You can learn more about nested sets at: http://www.dbmsmag.com/9603d06.html http://threebit.net/tutorials/nestedset/tutorial1.html http://api.rubyonrails.com/classes/ActiveRecord/Acts/NestedSet/ClassMethods.html http://opensource.symetrie.com/trac/better_nested_set/ Copyright (c) 2008 Collective Idea, released under the MIT license