Rails在视图外使用ActionView :: Helper方法

时间:2014-12-03 19:03:35

标签: ruby-on-rails

我已经创建了一个帮助器,我想用它进行文本操作

module ApplicationHelper

  module TextHelper

    extend ActionView::Helpers

  end
end

然而,当我在Rails控制台中运行ApplicationHelper::TextHelper.simple_format "foo"时,我得到了

NoMethodError: undefined method `white_list_sanitizer' for Module:Class

我还需要其他什么吗?

我已经查看了https://github.com/rails/rails/issues/13837,但它没有用。

使用Rails 4,Ruby 1.9.3

1 个答案:

答案 0 :(得分:4)

如果你在控制台中,你应该能够helper.simple_format('hi')。调用控制台中可以使用helper方法来调用一些辅助方法。

使用自定义助手时:

# app/helpers/custom_helper.rb
module CustomHelper
  def custom_method(x)
    puts "Custom method #{x}"
  end
end

# from the console
helper.custom_method('hi')

# from the controller
class SomeController < ApplicationController

  def index
    view_context.custom_method('hi')
  end
end