Trước tiên, bạn cần xóa Danh tính tham chiếu đến người dùng. Sau đó, bạn có thể xóa người dùng .. Theo mặc định, khóa ngoại đang thực hiện restrict
vì vậy bạn không thể xóa người dùng nếu có bất kỳ điều gì liên quan đến nó.
nếu bạn muốn sử dụng Rails để xử lý việc phá hủy danh tính mà bạn có thể làm
class User < ActiveRecord::Base
has_many :identities, dependent: :destroy
......
end
Điều này sẽ khiến Rails phá hủy tất cả các bản ghi phụ thuộc.
Nhưng khi bạn đang sử dụng Khóa ngoài, bạn có thể điều chỉnh quá trình di chuyển của mình để đặt xóa theo tầng
add_foreign_key :identities, :users, on_delete: :cascade
Giả sử đường ray 4.2 có hỗ trợ gốc