0
0
Fork 0

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 behaviour
This commit is contained in:
Eugen Rochko 2017-09-01 16:20:16 +02:00 committed by GitHub
parent 2305f7c391
commit 7dc5035031
13 changed files with 186 additions and 64 deletions

View file

@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 20170829215220) do
ActiveRecord::Schema.define(version: 20170901142658) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@ -224,17 +224,14 @@ ActiveRecord::Schema.define(version: 20170829215220) do
t.index ["uid"], name: "index_oauth_applications_on_uid", unique: true
end
create_table "preview_cards", id: :serial, force: :cascade do |t|
t.bigint "status_id"
create_table "preview_cards", force: :cascade do |t|
t.string "url", default: "", null: false
t.string "title"
t.string "description"
t.string "title", default: "", null: false
t.string "description", default: "", null: false
t.string "image_file_name"
t.string "image_content_type"
t.integer "image_file_size"
t.datetime "image_updated_at"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "type", default: 0, null: false
t.text "html", default: "", null: false
t.string "author_name", default: "", null: false
@ -243,7 +240,15 @@ ActiveRecord::Schema.define(version: 20170829215220) do
t.string "provider_url", default: "", null: false
t.integer "width", default: 0, null: false
t.integer "height", default: 0, null: false
t.index ["status_id"], name: "index_preview_cards_on_status_id", unique: true
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.index ["url"], name: "index_preview_cards_on_url", unique: true
end
create_table "preview_cards_statuses", id: false, force: :cascade do |t|
t.bigint "preview_card_id", null: false
t.bigint "status_id", null: false
t.index ["status_id", "preview_card_id"], name: "index_preview_cards_statuses_on_status_id_and_preview_card_id"
end
create_table "reports", id: :serial, force: :cascade do |t|
@ -432,7 +437,6 @@ ActiveRecord::Schema.define(version: 20170829215220) do
add_foreign_key "oauth_access_tokens", "oauth_applications", column: "application_id", on_delete: :cascade
add_foreign_key "oauth_access_tokens", "users", column: "resource_owner_id", on_delete: :cascade
add_foreign_key "oauth_applications", "users", column: "owner_id", on_delete: :cascade
add_foreign_key "preview_cards", "statuses", on_delete: :cascade
add_foreign_key "reports", "accounts", column: "action_taken_by_account_id", on_delete: :nullify
add_foreign_key "reports", "accounts", column: "target_account_id", on_delete: :cascade
add_foreign_key "reports", "accounts", on_delete: :cascade