Sha256: f3491ff822af0c9d68d5686a1b7fbb3742c499019c8c0a0d231dbacce63aefe8

Contents?: true

Size: 1021 Bytes

Versions: 3

Compression:

Stored size: 1021 Bytes

Contents

# frozen_string_literal: true

class AddOrganizationAsAuthorToDebates < ActiveRecord::Migration[5.2]
  class Debate < ApplicationRecord
    self.table_name = :decidim_debates_debates
    include Decidim::HasComponent
  end
  class User < ApplicationRecord
    self.table_name = :decidim_users
  end
  def change
    add_column :decidim_debates_debates, :decidim_author_type, :string

    Debate.find_each do |debate|
      if debate.decidim_author_id.present?
        debate.decidim_author_type = "Decidim::UserBaseEntity"
      else
        debate.decidim_author_id = debate.organization.id
        debate.decidim_author_type = "Decidim::Organization"
      end
      debate.save!
    end

    add_index :decidim_debates_debates,
              [:decidim_author_id, :decidim_author_type],
              name: "index_decidim_debates_debates_on_decidim_author"
    change_column_null :decidim_debates_debates, :decidim_author_id, false
    change_column_null :decidim_debates_debates, :decidim_author_type, false
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
decidim-debates-0.26.10 db/migrate/20181016132850_add_organization_as_author_to_debates.rb
decidim-debates-0.26.9 db/migrate/20181016132850_add_organization_as_author_to_debates.rb
decidim-debates-0.26.8 db/migrate/20181016132850_add_organization_as_author_to_debates.rb