nas/db/migrate/20231001031337_add_quote_to_statuses.rb
KMY(雪あすか) 44b739a39a
Add: Webでの引用表示 (#50)
* Add compacted component

* 引用表示の間にコンテナをはさみ、不要なコードを削除

* 引用APIを作成、ついでにブロック状況を引用APIに反映

* テスト修正など

* 引用をキャッシュに登録

* `quote_id`が`quote_of_id`になったのをSerializerに反映

* Fix test

* 引用をフィルターの対象に含める設定+エラー修正

* ストリーミングの存在しないプロパティ削除によるエラーを修正

* Fix lint

* 他のサーバーから来た引用付き投稿を処理

* Fix test

* フィルター設定時エラーの調整

* 画像つき投稿のスタイルを調整

* 画像つき投稿の最大高さを調整

* 引用禁止・非表示の設定を追加

* ブロック対応

* マイグレーションコード調整

* 引用設定の翻訳を作成

* Lint修正

* 参照1つの場合は引用に変換する設定を削除

* 不要になったテストを削除

* ブロック設定追加、バグ修正

* 他サーバーへ引用送信・受け入れ
2023-10-02 11:12:51 +09:00

32 lines
778 B
Ruby

# frozen_string_literal: true
require Rails.root.join('lib', 'mastodon', 'migration_helpers')
class AddQuoteToStatuses < ActiveRecord::Migration[7.0]
include Mastodon::MigrationHelpers
disable_ddl_transaction!
class StatusReference < ApplicationRecord
belongs_to :status
belongs_to :target_status, class_name: 'Status'
end
def up
safety_assured do
add_column_with_default :statuses, :quote_of_id, :bigint, default: nil, allow_null: true
StatusReference.transaction do
StatusReference.where(quote: true).includes(:status).each do |ref|
ref.status.update(quote_of_id: ref.target_status_id)
end
end
end
end
def down
safety_assured do
remove_column :statuses, :quote_of_id
end
end
end