Sha256: 4d2b4df894d34fc3258ef31eed2e2bc027906ee547121d5ae6cd30172578a21d

Contents?: true

Size: 1.31 KB

Versions: 28

Compression:

Stored size: 1.31 KB

Contents

module RailsKindeditor
  class MigrationGenerator < Rails::Generators::Base
    include Rails::Generators::Migration
    source_root File.expand_path('../templates', __FILE__)
    desc "Copy model and migration to your application."
    class_option :orm, :type => :string, :aliases => "-o", :default => "active_record", :desc => "ORM options: active_record or mongoid"

    def copy_files
      orm = options[:orm].to_s
      orm = "active_record" unless %w{active_record mongoid}.include?(orm)
      %w(asset file flash image media).each do |file|
        copy_model(orm, file)
      end
      if Rails.version < '4.0.0' && Rails.version >= '3.0.0' # insert code for rails3
        insert_into_file "app/models/kindeditor/asset.rb", "  attr_accessible :asset\n", :after => "before_save :update_asset_attributes\n"
      end
      if orm == "active_record"
        migration_template "migration/migration.rb", "db/migrate/create_kindeditor_assets.rb"
      end
    end

   def self.next_migration_number(dirname)
     if ActiveRecord::Base.timestamped_migrations
       Time.now.utc.strftime("%Y%m%d%H%M%S")
     else
       "%.3d" % (current_migration_number(dirname) + 1)
     end
   end
   
   private
   def copy_model(orm, name)
     template "models/#{orm}/kindeditor/#{name}.rb", "app/models/kindeditor/#{name}.rb"
   end
  end
end

Version data entries

28 entries across 28 versions & 6 rubygems

Version Path
rails_kindeditor-0.3.20 lib/generators/rails_kindeditor/migration/migration_generator.rb
loyal_rails_kindeditor-0.0.4 lib/generators/rails_kindeditor/migration/migration_generator.rb
loyal_rails_kindeditor-0.0.3 lib/generators/rails_kindeditor/migration/migration_generator.rb
loyal_rails_kindeditor-0.0.2 lib/generators/rails_kindeditor/migration/migration_generator.rb
loyal_rails_kindeditor-0.0.1 lib/generators/rails_kindeditor/migration/migration_generator.rb
rails_kindeditor-0.3.19 lib/generators/rails_kindeditor/migration/migration_generator.rb
rails_kindeditor-0.3.18 lib/generators/rails_kindeditor/migration/migration_generator.rb
rails_kindeditor-0.3.17 lib/generators/rails_kindeditor/migration/migration_generator.rb