Trong đường ray, tôi có thể lấy tên của bộ điều khiển hiện tại thông qua controller_name và hành động hiện tại bằng cách gọi action_name. Tôi đang tìm phản hồi thời gian chạy tương tự để tìm nạp thông tin sau:Làm thế nào để có được danh sách các bộ điều khiển và hành động trong ruby trên đường ray?
- Danh sách tất cả các bộ điều khiển trong ứng dụng.
- Danh sách tất cả các hành động trong một bộ điều khiển đã cho.
Ví dụ: Tôi là Bộ điều khiển sản phẩm có hành động "thêm" và "chỉnh sửa". Tôi có thể kéo tên của những hành động này theo chương trình để hiển thị cho người dùng những hoạt động nào được hỗ trợ không?
Tôi đã xem xét một phương thức yêu cầu sử dụng ActionController::Routing::Routes.named_routes.routes.each
nhưng tôi không thể làm việc đó. Tôi đã nhận lỗi không đổi ActionDispatch::Routing::Routes
khi tôi sử dụng nó.
Nếu có bất kỳ hướng dẫn hay tài liệu nào có thể giúp tôi hiểu khả năng phản chiếu của đường ray. Tôi đã tìm kiếm nhưng tôi chủ yếu có các blog liên quan đến phản ánh bản ghi hoạt động. Tôi đang tìm một cái gì đó cho phép tôi nhận được thông tin về bộ điều khiển và hành động/phương pháp tại thời gian chạy.
Cảm ơn,
Tabrez
Bạn đang làm điều này tại thời gian chạy hoặc trong một công việc cào. thời gian chạy là một ý tưởng tồi. Công việc của Rake rất dễ thực hiện. – drhenner
Ý của bạn là "các tuyến đường cào"? Tôi đang tìm kiếm thứ gì đó trong thời gian chạy. Tôi không cần thông tin mở rộng mà rake tuyến đường đầu ra. Tôi chỉ cần các tên bộ điều khiển, mà tôi giả định phải có sẵn như là một bộ sưu tập. Là một noob để rails, tôi chỉ không biết những gì các đối tượng bối cảnh có thể truy cập trong đường ray khi chạy. – Tabrez
Tìm thấy câu hỏi tương tự tại đây, http://stackoverflow.com/questions/1564278/how-to-programmatically-list-all-controllers-in-rails – nkm