Haml::SyntaxError: Invalid attribute list

Haml::SyntaxError: Invalid attribute list

我正在尝试使用 ruby 插值运算符 #{} 在 HAML%img src 标记中插入一个 ruby 变量。通过以下方式:

 -@locations.each do |location|
  %li
    %img(src: "#{location.thumbnail_url}")

但是,我收到以下错误:

Invalid attribute list: "(src: \"\#{location.thumbnail_url}\")".

有没有有效的方法来做到这一点?我确定之前有人做过,但看不到任何 literature/any 其他关于它的帖子。

您似乎混合了两种属性样式,normal style and the HTML style

您想将 () 替换为 {} 并使用正常样式:

%img{src: "#{location.thumbnail_url}"}

或者使用 HTML 样式和 = 而不是 :,像这样:

%img(src = "#{location.thumbnail_url}")