【问题标题】:rails subtract two strings in viewsrails 在视图中减去两个字符串
【发布时间】:2014-05-03 13:44:45
【问题描述】:

我想减去两个字符串

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

我找到了一个相同的教程

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

我在这里发现的问题是我在 rails 控制台中使用了该功能,它运行良好。

但在视图中显示问题

“asd S Turbo”的未定义方法 `-':String

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

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

我该怎么办?

【问题讨论】:

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


    【解决方案1】:

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

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

    然后在视图中:

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

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

    【讨论】:

      【解决方案2】:

      如果该方法适合你,你可以将它添加到初始化器中的字符串类

      config/initializers/string_extensions.rb

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-29
        • 1970-01-01
        • 1970-01-01
        • 2012-10-28
        • 2013-10-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多