Sha256: 9327d04143b19f71ac35976eec2649977f4eee1f74bf1f42ad03e737646b7740

Contents?: true

Size: 1.31 KB

Versions: 7

Compression:

Stored size: 1.31 KB

Contents

require 'orm_adapter/adapters/active_record'

module Bushido
  module Orm
    # This module contains some helpers and handle schema (migrations):
    #
    #   create_table :accounts do |t|
    #     t.database_authenticatable
    #     t.confirmable
    #     t.recoverable
    #     t.rememberable
    #     t.trackable
    #     t.lockable
    #     t.timestamps
    #   end
    #
    # However this method does not add indexes. If you need them, here is the declaration:
    #
    #   add_index "accounts", ["email"],                :name => "email",                :unique => true
    #   add_index "accounts", ["confirmation_token"],   :name => "confirmation_token",   :unique => true
    #   add_index "accounts", ["reset_password_token"], :name => "reset_password_token", :unique => true
    #
    module ActiveRecord
      module Schema
        include Bushido::Schema

        # Tell how to apply schema methods.
        def apply_bushido_schema(name, type, options={})
          column name, type.to_s.downcase.to_sym, options
        end
      end
    end
  end
end

module ActiveRecord
  class Base
    include Bushido::Models
  end
end

ActiveRecord::ConnectionAdapters::Table.send :include, Bushido::Orm::ActiveRecord::Schema
ActiveRecord::ConnectionAdapters::TableDefinition.send :include, Bushido::Orm::ActiveRecord::Schema

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
bushido-0.0.36 lib/bushido/orm/active_record.rb
bushido-0.0.35 lib/bushido/orm/active_record.rb
bushido-0.0.34 lib/bushido/orm/active_record.rb
bushido-0.0.33 lib/bushido/orm/active_record.rb
bushido-0.0.32 lib/bushido/orm/active_record.rb
bushido-0.0.31 lib/bushido/orm/active_record.rb
bushido-0.0.30 lib/bushido/orm/active_record.rb