Tôi đã làm việc với Ruby on Rails trong một thời gian ngắn. Gần đây tôi đã triển khai một hệ thống xác thực cho ứng dụng của mình. Tôi đã thực hiện một phương thức có sẵn trên 'application_helper.rb' để truy xuất người dùng đã đăng nhập hiện tại (phương thức được gọi là current_user).Ruby on Rails: Phương pháp chung có sẵn cho bộ điều khiển và chế độ xem?
Phương pháp chỉ truy xuất đối tượng User
nếu biến số session[:user_id]
có mặt.
Tuy nhiên, tôi gặp phải sự cố sau.
- Nếu tôi đặt phương pháp
current_user
trong 'application_helper.rb', điều khiển của tôi không thể tận dụng nó - Nếu tôi đặt phương pháp
current_user
trong 'application_controller.rb', của tôi lượt xem không thể sử dụng nó
Cách tiếp cận tốt nhất để giải quyết vấn đề này là gì? Cách dễ dàng sẽ được lặp lại mã của tôi trong cả hai bộ điều khiển và trợ giúp, nhưng tôi biết có một cách tốt hơn và chính xác hơn.
Cảm ơn trước
Tôi biết điều gì đó đơn giản như vậy. Tôi nghĩ helper_method đã làm tương tự như đặt phương thức trong lớp helper, nhưng nó không. Cảm ơn câu trả lời nhanh và chỉnh sửa cú pháp. :) – Lupi
@meagar: Tôi có cùng một vấn đề, nhưng thêm phương pháp trợ giúp đã không sửa chữa nó, tôi đã xác định cả phương pháp của tôi và helper của tôi trong class_controller của tôi không điều khiển ứng dụng. http://stackoverflow.com/questions/24993912/share-method-in-view-and-controller-ruby-on-rails-4 – user1876128