rails在视图中减去两个字符串

时间:2014-05-03 13:44:45

标签: ruby-on-rails string ruby-on-rails-3 subtraction

我想减去两个字符串

让我们说“你好世界” - “世界”=你好

我找到了一个相同的教程

http://shmuel.ahdut.com/2007/09/1-require-digestsha1-2-class-user.html

我在这里找到的问题是我在rails控制台中使用了它的功能。

但在视图中显示问题

undefined method` - 'for“asd S Turbo”:String

我已在控制器中添加了该功能

def -(s)
 self.gsub(s, "")
end

我该怎么办?

2 个答案:

答案 0 :(得分:0)

如果您尝试在视图中执行此操作,请将其添加为辅助函数。该方法不属于控制器。

module YourControllerHelper

  def clean(original, target)
    original.gsub(target, '')
  end

end

然后在视图中:

<%= clean('hello world', 'world') =>

这会在“你好”之后留下一个空格,所以你可能想在它上面调用rstrip或其他东西。

答案 1 :(得分:0)

如果该方法适用于您,您可以将其添加到初始化程序中的字符串类

配置/初始化/ string_extensions.rb

class String

  def -(s)
    gsub(s, "")
  end

end