Rails 4.0 image_tag自定义属性

Dog*_*Dog 4 image ruby-on-rails-4

当我在image_tag中包含可选标记时,它会抛出一个错误:

undefined local variable or method `src' for #<#<Class:0x007fa143339230>:0x007fa147942998>
Run Code Online (Sandbox Code Playgroud)

原始HTML(或所需)

<img src="dark-logo.png" data-src="dark-logo.png" data-src-retina="logo-retina.png" width="244" height="56" alt="">
Run Code Online (Sandbox Code Playgroud)

Rails视图

<%= image_tag "dark-logo.png", data-src => "dark-logo.png %>
Run Code Online (Sandbox Code Playgroud)

如何获取image_tag中的可选标签以呈现所需的HTML?

zwi*_*pie 10

<%= image_tag "dark-logo.png", data: { src: "dark-logo.png", src_retina: "logo.png" } %>
Run Code Online (Sandbox Code Playgroud)

它在Rails API Docs中提到过,但有点难以找到.

data散列内部,任何-都应该被a替换_,因为Ruby不喜欢-变量名的一部分.