Class: CreateActiveStorageTables

Inherits:
Object
  • Object
show all
Defined in:
lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb

Overview

This migration comes from active_storage (originally 20170806125915)

Instance Method Summary collapse

Instance Method Details

#changeObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb', line 3

def change
  create_table :active_storage_blobs do |t|
    t.string   :key,        null: false
    t.string   :filename,   null: false
    t.string   :content_type
    t.text     :metadata
    t.bigint   :byte_size,  null: false
    t.string   :checksum,   null: false
    t.datetime :created_at, null: false

    t.index [ :key ], unique: true
  end

  create_table :active_storage_attachments do |t|
    t.string     :name,     null: false
    t.references :record,   null: false, polymorphic: true, index: false
    t.references :blob,     null: false

    t.datetime :created_at, null: false

    t.index [ :record_type, :record_id, :name, :blob_id ], name: 'index_active_storage_attachments_uniqueness', unique: true
    t.foreign_key :active_storage_blobs, column: :blob_id
  end
end