【问题标题】:Adding an image with Deface::Override to Spree使用 Deface::Override 添加图像到 Spree
【发布时间】:2016-06-06 22:56:11
【问题描述】:

我可以使用Deface::Override<div> 之后插入一些文本,但现在我想添加二维码图像而不是文本。您将如何更改此代码以适用于图像?我成功添加文本的原始代码是第一个块,我尝试添加图像的第二个是第二个。非常感谢!

这是第一个起作用的:

Deface::Override.new(:virtual_path  => "spree/home/index",
                 :replace => "[data-hook='homepage_products']",
                 :name          => "homepage_contents",
                 :text          => "La registration, c'est le futur!")

这是第二个不起作用的:

Deface::Override.new(:virtual_path  => "spree/checkout/_address",
                 :insert_after => "[data-hook = 'shipping_fieldset_wrapper']",
                 :name          => "add_qr_code",
                 :text          => image_tag("assets/images/qr_code.png"))

【问题讨论】:

  • 您遇到错误了吗?上面的代码产生的确切输出是什么?

标签: ruby-on-rails image overriding spree deface


【解决方案1】:

我相信您需要提供 erb 标签 <%= ... %> 才能使其工作,否则它将添加原始 HTML。

试试:

Deface::Override.new(:virtual_path  => "spree/checkout/_address",
                 :insert_after => "[data-hook = 'shipping_fieldset_wrapper']",
                 :name          => "add_qr_code",
                 :text          => "<%= image_tag('assets/images/qr_code.png') %>")

https://github.com/spree/deface 示例

【讨论】:

  • 您没有通过另一个 erb 解释器运行文本,尤其是因为您现在处于 ruby​​ 解释器中。
  • 您确认了这一点还是只是猜测? github.com/spree/deface 在示例编号 3 下似乎暗示了其他情况,每次我使用它时也是如此。
  • 我只是在猜测,但您发布的链接中的示例与您一致。你能编辑你的答案并把那个链接放在那里吗?
  • 我支持我所掌握的信息。你给了我更多信息,我现在同意你的回答。
猜你喜欢
  • 2013-07-31
  • 2015-02-04
  • 1970-01-01
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
  • 2017-04-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多