Sha256: 1185dd83c1aa6f34263148cd4ab233361590b5d4939fab0b6bf9eaa1a86a2f56

Contents?: true

Size: 917 Bytes

Versions: 3

Compression:

Stored size: 917 Bytes

Contents

class LocalizeImages < ActiveRecord::Migration[4.2]
  def locale
    I18n.default_locale
  end

  def up
    Image.all.in_locale(locale).each do |image|
      next if image.attributes["byline"].blank?
      Localization.create(
        localizable: image,
        name: "caption",
        locale: locale,
        value: image.attributes["byline"]
      )
    end
    remove_column :images, :name, :string
    remove_column :images, :byline, :string
    remove_column :images, :description, :string
  end

  def down
    add_column :images, :name, :string
    add_column :images, :byline, :string
    add_column :images, :description, :string

    Localization.where(
      localizable_type: "Image",
      name: "caption",
      locale: locale
    ).each do |localization|
      localization.localizable.update_column(
        "byline",
        localization.value
      )
      localization.destroy
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pages_core-3.6.2 db/migrate/20150401131300_localize_images.rb
pages_core-3.6.1 db/migrate/20150401131300_localize_images.rb
pages_core-3.6.0 db/migrate/20150401131300_localize_images.rb