Sha256: 39320647eca64150d8fc63d87b671fb8727c5554db40332e7cffd7b14327b4e7

Contents?: true

Size: 811 Bytes

Versions: 10

Compression:

Stored size: 811 Bytes

Contents

# frozen_string_literal: true

class AddBlogIdToResources < ActiveRecord::Migration[4.2]
  set_role "blog_content"

  class Blog < ActiveRecord::Base; end
  class Content < ActiveRecord::Base; end
  class Resource < ActiveRecord::Base; end

  def up
    add_column :resources, :blog_id, :integer

    if Resource.any?
      default_blog_id = Blog.order(:id).first.id
      Resource.find_each do |resource|
        content_id = resource.article_id
        blog_id = if content_id
                    Content.find(content_id).blog_id
                  else
                    default_blog_id
                  end
        resource.update_column(:blog_id, blog_id)
      end
    end

    change_column :resources, :blog_id, :integer, null: false
  end

  def down
    remove_column :resources, :blog_id
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
HornsAndHooves-publify_core-10.5.0 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.4.0 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.3.0 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.2.0 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.1.1 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.1.0 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.0.3 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.0.2 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.0.1 db/migrate/20160701062604_add_blog_id_to_resources.rb
HornsAndHooves-publify_core-10.0.0 db/migrate/20160701062604_add_blog_id_to_resources.rb