Make PreviewCard records reuseable between statuses (#4642)
* Make PreviewCard records reuseable between statuses **Warning!** Migration truncates preview_cards tablec * Allow a wider thumbnail for link preview, display it in horizontal layout (#4648) * Delete preview cards files before truncating * Rename old table instead of truncating it * Add mastodon:maintenance:remove_deprecated_preview_cards * Ignore deprecated_preview_cards in schema definition * Fix null behaviourmain
parent
2305f7c391
commit
7dc5035031
@ -0,0 +1,30 @@
|
|||||||
|
class TruncatePreviewCards < ActiveRecord::Migration[5.1]
|
||||||
|
def up
|
||||||
|
rename_table :preview_cards, :deprecated_preview_cards
|
||||||
|
|
||||||
|
create_table :preview_cards do |t|
|
||||||
|
t.string :url, default: '', null: false, index: { unique: true }
|
||||||
|
t.string :title, default: '', null: false
|
||||||
|
t.string :description, default: '', null: false
|
||||||
|
t.attachment :image
|
||||||
|
t.integer :type, default: 0, null: false
|
||||||
|
t.text :html, default: '', null: false
|
||||||
|
t.string :author_name, default: '', null: false
|
||||||
|
t.string :author_url, default: '', null: false
|
||||||
|
t.string :provider_name, default: '', null: false
|
||||||
|
t.string :provider_url, default: '', null: false
|
||||||
|
t.integer :width, default: 0, null: false
|
||||||
|
t.integer :height, default: 0, null: false
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def down
|
||||||
|
if ActiveRecord::Base.connection.table_exists? 'deprecated_preview_cards'
|
||||||
|
drop_table :preview_cards
|
||||||
|
rename_table :deprecated_preview_cards, :preview_cards
|
||||||
|
else
|
||||||
|
raise ActiveRecord::IrreversibleMigration, 'Previous preview cards table has already been removed'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,7 @@
|
|||||||
|
class CreateJoinTablePreviewCardsStatuses < ActiveRecord::Migration[5.1]
|
||||||
|
def change
|
||||||
|
create_join_table :preview_cards, :statuses do |t|
|
||||||
|
t.index [:status_id, :preview_card_id]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in new issue