Điều này rất không phổ biến và có lẽ bạn rất không may mắn khi nó mắc phải, điều này hoàn toàn có thể xảy ra.
Hãy xem xét những điều sau:Người dùng A gửi biểu mẫu
- Người dùng A gửi biểu mẫu
- Rails kiểm tra cơ sở dữ liệu để tìm ID hiện có cho Người dùng A- không tìm thấy ID nào
- Người dùng B gửi biểu mẫu
- Rails kiểm tra cơ sở dữ liệu để tìm ID hiện có cho Người dùng B- không tìm thấy mã nào
- Rails Lưu một bản ghi của người dùng
- Rails lưu bản ghi B của người dùng
Tất cả điều này phải xảy ra trong vòng mili giây nhưng về mặt kỹ thuật thì nó có thể xảy ra.
Tôi khuyên bạn nên thêm một ràng buộc ở cấp cơ sở dữ liệu (khóa chính).