27 lines
965 B
Ruby
27 lines
965 B
Ruby
# This migration comes from action_text (originally 20180528164100)
|
|
class CreateActionTextTables < ActiveRecord::Migration[6.0]
|
|
def change
|
|
# Use Active Record's configured type for primary and foreign keys
|
|
primary_key_type, foreign_key_type = primary_and_foreign_key_types
|
|
|
|
create_table :action_text_rich_texts, id: primary_key_type do |t|
|
|
t.string :name, null: false
|
|
t.text :body, size: :long
|
|
t.references :record, null: false, polymorphic: true, index: false, type: foreign_key_type
|
|
|
|
t.timestamps
|
|
|
|
t.index [:record_type, :record_id, :name], name: "index_action_text_rich_texts_uniqueness", unique: true
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def primary_and_foreign_key_types
|
|
config = Rails.configuration.generators
|
|
setting = config.options[config.orm][:primary_key_type]
|
|
primary_key_type = setting || :primary_key
|
|
foreign_key_type = setting || :bigint
|
|
[primary_key_type, foreign_key_type]
|
|
end
|
|
end
|