class ActiveRecord::Generators::FastTreeGenerator
Public Instance Methods
copy_fast_tree_migration()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 12 def copy_fast_tree_migration if (behavior == :invoke && model_exists?) || (behavior == :revoke && migration_exists?(table_name)) migration_template "migration_existing.rb", "db/migrate/add_fast_tree_to_#{table_name}.rb", migration_version: migration_version else migration_template "migration.rb", "db/migrate/fast_tree_create_#{table_name}.rb", migration_version: migration_version end end
generate_model()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 20 def generate_model invoke "active_record:model", [name], migration: false unless model_exists? && behavior == :invoke end
migration_data()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 24 def migration_data <<RUBY ## Pointers t.integer :l_ptr t.integer :r_ptr t.integer :depth RUBY end
migration_version()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 42 def migration_version if rails5? "[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]" end end
postgresql?()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 37 def postgresql? config = ActiveRecord::Base.configurations[Rails.env] config && config['adapter'] == 'postgresql' end
rails5?()
click to toggle source
# File lib/generators/active_record/fast_tree_generator.rb, line 33 def rails5? Rails.version.start_with? '5' end