【问题标题】:How to create an image_tag filter for the rails liquid GEM如何为 rails 液体 GEM 创建 image_tag 过滤器
【发布时间】:2013-03-01 00:42:32
【问题描述】:

我正在尝试编写一个 CMS 类型的应用程序,并希望允许用户使用 {{ page.image_url | 等格式将图像嵌入到他们的流动页面模板中。 my_img_tag }}。

辅助模块只是:

module LiquidFilters

  include ActionView::Helpers::TagHelper 
  include ActionView::Helpers::AssetTagHelper

  def my_img_tag(image_name)
    image_tag (image_name)
  end

end

然后我在渲染期间注册:

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

但是返回的结果是:

Liquid error: undefined local variable or method `config' for #

我不想自己创建 img 标签,因为我正在使用回形针来定位来自 AWS-S3 的图像并且我担心我会遇到问题。

非常感谢任何帮助 - 我对 ruby​​ 和 rails 还很陌生。

【问题讨论】:

    标签: ruby-on-rails filter image liquid


    【解决方案1】:

    当我在 LiquidFilter 模块中包含额外的两个 Sprockets 模块时,该代码有效。即需要的四个模块是:

    include ActionView::Helpers::TagHelper 
    include ActionView::Helpers::AssetTagHelper
    include Sprockets::Helpers::RailsHelper
    include Sprockets::Helpers::IsolatedHelper
    

    Liquid 的这种使用使人们能够使用简单的 CMS 类型的应用程序将上传的图像嵌入到他们的 HTML 中,这些图像是由运行在 heroku 上的 Paperclip GEM 从亚马逊 S3 中提取的。

    (感谢 Pascal 格式化我的原始问题)。

    【讨论】:

      猜你喜欢
      • 2018-01-17
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 2023-03-20
      • 1970-01-01
      • 2013-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多