Просто в качестве основного примера, скажем, у вас есть:
app / messages_controller.rb и
хелперов / messages_helper.rb
В вашем messages_helper.rb у вас может быть что-то вроде того, что вы предложили.
#Also you should use = instead of <<
#You can only use << on a variable that has already been initialised
#a = "hello " #=> "hello"
#a << "world" #=> "hello world"
#b << "whatevs" #=> ERROR
def dummy_helper_method
@html_string = "has shared #{link_to @review.title, @review}"
@html_string
end
Затем в вашем messages_controller.rb любым из ваших методов вы можете вызвать новый dummy_method, и теперь вы получите доступ к переменной экземпляра @html_string
def index
dummy_helper_method
#you can now access your @html_string variable from inside this index method
end
Как примечание, это не правильный способ сделать это . Вы не должны вызывать это в своем контроллере, если вы не пытаетесь сделать что-то довольно специфическое с этим, что не похоже на вас. Если вы пытаетесь отобразить его в своем представлении, чтобы вы могли отобразить его, вы можете фактически вызвать свой вспомогательный метод, который вы только что создали, в любом из файлов представления ваших сообщений (views / messages / everything_in_here.html.erb). ) вместо вызова в вашем контроллере.
Например:
#views/messages/edit.html.erb
<%= dummy_helper_method %>
В любом случае, надеюсь, это поможет