液体过滤器不工作(rails app)

时间:2014-03-26 12:21:41

标签: ruby-on-rails ruby-on-rails-4 liquid

我使用Liquid作为我的模板标签,用户可以从我的网站下载价格标签。

Liquid本身很好,但没有自定义过滤器工作。他们根本就没有做任何事情。

以下是一个例子:

$ {{item.primary_offer.subscription.month_price | no_decimal}},- per month

这应该导致:

$ 199,- per month.

但是过滤器不起作用,结果是:

$ 199.0,- per month.

我的过滤器文件如下所示:

    module LiquidFilters
      include ActionView::Helpers::NumberHelper

      def no_decimal(input)
        number_to_currency(input.to_f, precision: 0)
      end

    end

Liquid::Template.register_filter(LiquidFilters)

和我的应用程序助手呈现液体输入如下所示:

def liquidize(content, arguments)
  Liquid::Template.parse(content).render(arguments, :filters => [LiquidFilters])
end

1 个答案:

答案 0 :(得分:0)

我通过将LiquidFilters模块移动到应用程序帮助文件(在ApplicationHelper模块下)来解决了这个问题。

突然发生的一切。

我不明白为什么这会产生影响,但确实有效。如果有人能够解释这个病,那么他们的答案就会提升。 :)