Có thể gọi các phương thức trợ giúp từ bộ điều khiển không? Nếu có làm thế nào để làm điều này trong Rails 3?Phương thức trợ giúp gọi từ bộ điều khiển Rails 3
29
A
Trả lời
36
view_context.some_helper_method
+1
Đây là câu trả lời đúng nhất cho Rails 3. –
28
Bạn có thể bao gồm mô-đun trợ giúp trong bộ điều khiển hoặc xác định trình trợ giúp làm phương thức điều khiển và đánh dấu nó là người trợ giúp qua helper_method :method_name
.
class FooHelper
def bar ... end
end
class QuxsController
include FooHelper
end
hoặc
class QuxsController
private
def bar ... end
helper_method :bar
end
1
này đang làm việc nếu một số ai muốn sử dụng ApplicationHelper phương pháp trong điều khiển khác hoặc xem chỉ cần thêm include ApplicationHelper
này cung cấp cho dưới đây vì tất cả các bộ điều khiển của bạn bắt nguồn từ ApplicationController.
class ApplicationController < ActionController::Base
protect_from_forgery
include ApplicationHelper
end
Có thể thực hiện được. Bạn có thể tìm thấy câu trả lời ở đây: http://stackoverflow.com/questions/453762/nomethoderror-when-trying-to-invoke-helper-method-from-rails-controller – alexkv
Vui lòng đánh dấu "view_context.some_helper_method" là câu trả lời cảm ơn bạn. – Vinozio