Các tuyến đường trong Ruby on Rails phân biệt chữ hoa chữ thường. Có vẻ như ai đó đã đưa nó lên trước đây, và nó đã được dán nhãn sẽ không sửa chữa.Tuyến đường ray - Cách làm cho trường hợp không nhạy cảm?
http://rails.lighthouseapp.com/projects/8994/tickets/393-routes-are-case-sensitive
Đó đập vào mắt tôi như không may, như tôi không thực sự thấy bất kỳ lộn ngược trên ứng dụng của riêng mình cho các tuyến đường là trường hợp nhạy cảm, trong khi về mặt nhược điểm nó tạo ra một tiềm năng cho sự nhầm lẫn và một diện mạo chung của thiếu đánh bóng trong quan điểm của tôi.
Cách tốt nhất để làm cho các tuyến đường của tôi phân biệt chữ hoa chữ thường là gì?
tôi thấy mẹo này trên tìm kiếm của Google:
map.connect "web_feeds/:action", :controller => 'web_feeds', :action => /[a-z_]+/i
Đây là thông minh, nhưng nó vẫn để lại phần web_feeds của vụ án url nhạy cảm. Tuy nhiên, tôi không thấy bất kỳ cách tương tự nào xung quanh việc này, mà không cần nhập vào mỗi kết hợp có thể của wEb_feEds theo cách thủ công, nhưng đó rõ ràng là một giải pháp khủng khiếp vì bất kỳ lý do nào.
Các giải pháp trên không làm việc cho Rails 3, nhưng tôi đã sửa nó ngay bây giờ. –
Cuối cùng tôi đã làm điều này thành một viên ngọc, vì vậy nó dễ sử dụng hơn nhiều: https://rubygems.org/gems/route_downcaser –
Giải pháp này là problmatic nếu bạn có một số tên tài sản/hình ảnh trong Mixed Case. Ví dụ: nếu bạn đã sử dụng hình ảnh từ nội dung/hình ảnh/ABc_xyZZ.png (Hộp hỗn hợp), thì sau khi sử dụng giải pháp này, nó sẽ cố gắng định vị hình ảnh tại nội dung/hình ảnh/abc_xyzz.png (Chữ thường) và máy chủ sẽ phản hồi với 404 không tìm thấy. –