foreign_key, non-nullable, dependent: destroy in account_moderation_notes (#5294)
* Add foreign key constraint to column `account` in `account_moderation_notes` * Change account_id and target_account_id to non-nullable in account_moderation_notes * Add dependent: :destroy to account and target_account in account_moderation_notes
This commit is contained in:
		
							parent
							
								
									96c942e8ab
								
							
						
					
					
						commit
						6c54d2e583
					
				| @ -91,8 +91,8 @@ class Account < ApplicationRecord | ||||
|   has_many :targeted_reports, class_name: 'Report', foreign_key: :target_account_id | ||||
| 
 | ||||
|   # Moderation notes | ||||
|   has_many :account_moderation_notes | ||||
|   has_many :targeted_moderation_notes, class_name: 'AccountModerationNote', foreign_key: :target_account_id | ||||
|   has_many :account_moderation_notes, dependent: :destroy | ||||
|   has_many :targeted_moderation_notes, class_name: 'AccountModerationNote', foreign_key: :target_account_id, dependent: :destroy | ||||
| 
 | ||||
|   scope :remote, -> { where.not(domain: nil) } | ||||
|   scope :local, -> { where(domain: nil) } | ||||
|  | ||||
| @ -1,13 +1,12 @@ | ||||
| # frozen_string_literal: true | ||||
| 
 | ||||
| # == Schema Information | ||||
| # | ||||
| # Table name: account_moderation_notes | ||||
| # | ||||
| #  id                :integer          not null, primary key | ||||
| #  content           :text             not null | ||||
| #  account_id        :integer | ||||
| #  target_account_id :integer | ||||
| #  account_id        :integer          not null | ||||
| #  target_account_id :integer          not null | ||||
| #  created_at        :datetime         not null | ||||
| #  updated_at        :datetime         not null | ||||
| # | ||||
|  | ||||
| @ -0,0 +1,5 @@ | ||||
| class AddForeignKeyToAccountModerationNotes < ActiveRecord::Migration[5.1] | ||||
|   def change | ||||
|     add_foreign_key :account_moderation_notes, :accounts | ||||
|   end | ||||
| end | ||||
| @ -0,0 +1,6 @@ | ||||
| class ChangeAccountsNonnullableInAccountModerationNotes < ActiveRecord::Migration[5.1] | ||||
|   def change | ||||
|     change_column_null :account_moderation_notes, :account_id, false | ||||
|     change_column_null :account_moderation_notes, :target_account_id, false | ||||
|   end | ||||
| end | ||||
| @ -10,7 +10,7 @@ | ||||
| # | ||||
| # It's strongly recommended that you check this file into your version control system. | ||||
| 
 | ||||
| ActiveRecord::Schema.define(version: 20171006142024) do | ||||
| ActiveRecord::Schema.define(version: 20171010025614) do | ||||
| 
 | ||||
|   # These are extensions that must be enabled in order to support this database | ||||
|   enable_extension "plpgsql" | ||||
| @ -25,8 +25,8 @@ ActiveRecord::Schema.define(version: 20171006142024) do | ||||
| 
 | ||||
|   create_table "account_moderation_notes", force: :cascade do |t| | ||||
|     t.text "content", null: false | ||||
|     t.bigint "account_id" | ||||
|     t.bigint "target_account_id" | ||||
|     t.bigint "account_id", null: false | ||||
|     t.bigint "target_account_id", null: false | ||||
|     t.datetime "created_at", null: false | ||||
|     t.datetime "updated_at", null: false | ||||
|     t.index ["account_id"], name: "index_account_moderation_notes_on_account_id" | ||||
| @ -459,6 +459,7 @@ ActiveRecord::Schema.define(version: 20171006142024) do | ||||
|   end | ||||
| 
 | ||||
|   add_foreign_key "account_domain_blocks", "accounts", name: "fk_206c6029bd", on_delete: :cascade | ||||
|   add_foreign_key "account_moderation_notes", "accounts" | ||||
|   add_foreign_key "account_moderation_notes", "accounts", column: "target_account_id" | ||||
|   add_foreign_key "blocks", "accounts", column: "target_account_id", name: "fk_9571bfabc1", on_delete: :cascade | ||||
|   add_foreign_key "blocks", "accounts", name: "fk_4269e03e65", on_delete: :cascade | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user