最初にユーザーを参照するIDを削除する必要があります。次に、ユーザーを削除できます。デフォルトでは、外部キーはrestrict
を実行しています。 そのため、ユーザーを参照している場合は削除できません。
Railsを使用してIDの破棄を処理したい場合は、
class User < ActiveRecord::Base
has_many :identities, dependent: :destroy
......
end
これにより、Railsはすべての依存レコードを破棄します。
ただし、外部キーを使用しているため、移行を調整してカスケード削除を設定できます
add_foreign_key :identities, :users, on_delete: :cascade
ネイティブサポートのあるレール4.2を想定