Ruby on rails 3 如何从RubyonRails中的RJS帮助程序访问视图帮助程序?

Ruby on rails 3 如何从RubyonRails中的RJS帮助程序访问视图帮助程序?,ruby-on-rails-3,unobtrusive-javascript,rjs,Ruby On Rails 3,Unobtrusive Javascript,Rjs,我在多个RJS文件中重复了一些常见的RJS,所以我想把它放到一个助手中 我在app/helpers/application_helper.rb中添加了一个方法,就像我通常为html.erb文件添加方法一样。该方法可以工作,只是它不能调用RJS文件可以调用的视图帮助程序 RJS文件中的一行代码是: notices = flash.collect { |type,msg| content_tag(:p, msg, :class => type) } 但是不能从RJS助手访问content_标

我在多个RJS文件中重复了一些常见的RJS,所以我想把它放到一个助手中

我在app/helpers/application_helper.rb中添加了一个方法,就像我通常为html.erb文件添加方法一样。该方法可以工作,只是它不能调用RJS文件可以调用的视图帮助程序

RJS文件中的一行代码是:

notices = flash.collect { |type,msg| content_tag(:p, msg, :class => type) }

但是不能从RJS助手访问content_标记。为什么不呢?我如何从那里访问它?

像这样的东西怎么样

#application_helper.rb
def view_helpers
  ActionController::Base.helpers
end

def do_it
  view_helpers.content_tag :div, :class => 'yes'
end

您也必须在rjs调用的任何方法中使用
view\u helpers
,这不是很好,但我在模型中尝试了它(仅在2.3和3.1中获得了项目),这很有效…

类似的东西呢

#application_helper.rb
def view_helpers
  ActionController::Base.helpers
end

def do_it
  view_helpers.content_tag :div, :class => 'yes'
end
您也必须在rjs调用的任何方法中使用
view\u helpers
,这不是很好,但我在模型中尝试过(仅在2.3和3.1中获得了项目),这很有效