Bắt đầu với Rails 3.0, theo thời gian, tôi đã nhận được thông báo ngoại lệ như thế này:đàn áp ActionView :: ngoại lệ MissingTemplate cho Rails 3.x
ActionView::MissingTemplate: Missing template [...] with {:locale=>[:en],
:formats=>[:text], :handlers=>[:erb, :builder, :haml]}. Searched in: * [...]
Ví dụ, một tùy ý viết tay URL như http://example.com/some/path/robots.txt làm tăng lỗi. Không vui.
Tôi đã báo cáo sự cố trong vé này cách đây khá lâu và đã sử dụng bản vá được đề cập ở đây, nhưng sự cố vẫn tiếp diễn.
Một sửa chữa được đề xuất trong bài viết trên blog này,
http://trevorturk.wordpress.com/2011/12/09/handling-actionviewmissingtemplate-exceptions/
Để sử dụng này:
Nhưng nó không cảm thấy đúng với tôi, như tôi 'm không quan tâm đến quá tải một hành động với nhiều định dạng. Trong ứng dụng của tôi, có các URL riêng biệt cho HTML và JSON API, do đó, đơn giản render
là đủ.
Tôi có nên nuốt ngoại lệ theo số rescue_from ActionView::MissingTemplate
và trả lại 406 bản thân mình không?
Có cách nào tốt hơn để xử lý tình huống này không?
Hoặc tôi có thể hỏi theo cách này - ngay từ đầu, có bất kỳ sự hữu ích trong thế giới thực nào trong việc tăng loại ngoại lệ này lên sản xuất không?
Cảm ơn bạn. Kết luận của tôi vào thời điểm này là hầu hết vấn đề là với ': format'. Có cách nào để vô hiệu hóa ': format' hoàn toàn không? Tôi không muốn thêm ': format => false' vào mọi định nghĩa. – kenn