Hãy nghĩ về ứng dụng giàn giáo Rails đơn giản với hành động "mới" chứa biểu mẫu để thêm bản ghi vào cơ sở dữ liệu bằng nút "lưu". Sau khi hành động "tạo", bộ điều khiển chuyển hướng đến hành động "hiển thị", trong đó người dùng có thể sử dụng liên kết "chỉnh sửa" để chỉnh sửa bản ghi vừa được chèn. Cho đến nay, rất đơn giản.Đường ray: Ngăn chặn chèn trùng lặp do nhấn nút quay lại và lưu lại
Nhưng nếu người dùng thay vì sử dụng nút quay lại của trình duyệt sau khi tạo bản ghi để quay lại hành động "mới", trình duyệt sẽ hiển thị biểu mẫu với các giá trị mà người dùng vừa nhập. Bây giờ anh ta thay đổi một số giá trị và nhấn "lưu" một lần nữa. Ông nghĩ rằng điều này sẽ thay đổi kỷ lục, nhưng tất nhiên điều này tạo ra một kỷ lục mới.
Cách ưa thích để ngăn các mục trùng lặp như vậy là gì? Tôi đang tìm một giải pháp chung, có thể dựa trên cookie hoặc JavaScript.
Dữ liệu đang được gửi là gì?có bất kỳ số nhận dạng duy nhất nào mà chúng tôi có thể nắm giữ không? –
Tôi đang suy nghĩ về một giải pháp chung, vì vậy nó sẽ làm việc cho bất kỳ loại dữ liệu nào. Và như vậy, nó cũng nên làm việc nếu có giá trị NO mà phải là duy nhất. –