Sha256: eb2948f5045d51f379995bc701357ddbec909b9a9fac089b8179f61807563bdc

Contents?: true

Size: 1.43 KB

Versions: 41

Compression:

Stored size: 1.43 KB

Contents

# frozen_string_literal: true

require "rails/generators/migration"

module ActiveRecord
  module Generators # :nodoc:
    module Migration
      extend ActiveSupport::Concern
      include Rails::Generators::Migration

      module ClassMethods
        # Implement the required interface for Rails::Generators::Migration.
        def next_migration_number(dirname)
          next_migration_number = current_migration_number(dirname) + 1
          ActiveRecord::Migration.next_migration_number(next_migration_number)
        end
      end

      private
        def primary_key_type
          key_type = options[:primary_key_type]
          ", id: :#{key_type}" if key_type
        end

        def foreign_key_type
          key_type = options[:primary_key_type]
          ", type: :#{key_type}" if key_type
        end

        def db_migrate_path
          if defined?(Rails.application) && Rails.application
            configured_migrate_path || default_migrate_path
          else
            "db/migrate"
          end
        end

        def default_migrate_path
          Rails.application.config.paths["db/migrate"].to_ary.first
        end

        def configured_migrate_path
          return unless database = options[:database]

          config = ActiveRecord::Base.configurations.configs_for(
            env_name: Rails.env,
            name: database
          )

          Array(config&.migrations_paths).first
        end
    end
  end
end

Version data entries

41 entries across 41 versions & 5 rubygems

Version Path
minato_ruby_api_client-0.2.2 vendor/bundle/ruby/3.2.0/gems/activerecord-7.1.3.4/lib/rails/generators/active_record/migration.rb
activerecord-8.0.1 lib/rails/generators/active_record/migration.rb
activerecord-8.0.0.1 lib/rails/generators/active_record/migration.rb
activerecord-7.2.2.1 lib/rails/generators/active_record/migration.rb
activerecord-7.1.5.1 lib/rails/generators/active_record/migration.rb
activerecord-8.0.0 lib/rails/generators/active_record/migration.rb
activerecord-7.2.2 lib/rails/generators/active_record/migration.rb
activerecord-7.1.5 lib/rails/generators/active_record/migration.rb
activerecord-8.0.0.rc2 lib/rails/generators/active_record/migration.rb
activerecord-7.2.1.2 lib/rails/generators/active_record/migration.rb
activerecord-7.1.4.2 lib/rails/generators/active_record/migration.rb
activerecord-8.0.0.rc1 lib/rails/generators/active_record/migration.rb
activerecord-7.2.1.1 lib/rails/generators/active_record/migration.rb
activerecord-7.1.4.1 lib/rails/generators/active_record/migration.rb
activerecord-8.0.0.beta1 lib/rails/generators/active_record/migration.rb
omg-activerecord-8.0.0.alpha9 lib/rails/generators/active_record/migration.rb
omg-activerecord-8.0.0.alpha8 lib/rails/generators/active_record/migration.rb
omg-activerecord-8.0.0.alpha7 lib/rails/generators/active_record/migration.rb
omg-activerecord-8.0.0.alpha4 lib/rails/generators/active_record/migration.rb
omg-activerecord-8.0.0.alpha3 lib/rails/generators/active_record/migration.rb