Files
Redmine/db/migrate/20120223110929_change_attachments_container_defaults.rb
Go MAEDA 5861160ffc Add "frozen_string_literal: false" for all files (#26561).
This will be changed to true in the future.


git-svn-id: http://svn.redmine.org/redmine/trunk@17947 e93f8b46-1217-0410-a6f0-8f06a7374b81
2019-03-15 01:32:57 +00:00

28 lines
1.2 KiB
Ruby

# frozen_string_literal: false
class ChangeAttachmentsContainerDefaults < ActiveRecord::Migration[4.2]
def self.up
# Need to drop the index otherwise the following error occurs in Rails 3.1.3:
#
# Index name 'temp_index_altered_attachments_on_container_id_and_container_type' on
# table 'altered_attachments' is too long; the limit is 64 characters
remove_index :attachments, [:container_id, :container_type]
change_column :attachments, :container_id, :integer, :default => nil, :null => true
change_column :attachments, :container_type, :string, :limit => 30, :default => nil, :null => true
Attachment.where("container_id = 0").update_all("container_id = NULL")
Attachment.where("container_type = ''").update_all("container_type = NULL")
add_index :attachments, [:container_id, :container_type]
end
def self.down
remove_index :attachments, [:container_id, :container_type]
change_column :attachments, :container_id, :integer, :default => 0, :null => false
change_column :attachments, :container_type, :string, :limit => 30, :default => "", :null => false
add_index :attachments, [:container_id, :container_type]
end
end