Ruby 如何在haml img src中显示erb代码?

Ruby 如何在haml img src中显示erb代码?,ruby,haml,erb,middleman,Ruby,Haml,Erb,Middleman,可能的注意事项: data.programs.client_name是数组吗 您的代码是否正确识别 如果您将%img标记替换为=data.programs.logo\u url[i]您有链接吗 haml标签没有问题。这证明: %img.client-logo{:src => data.programs.logo_url[i], :alt => ""}/ [fotanus@thing~]$cat a.haml -a=[] -a[0]} [fotanus@thing~]$haml

可能的注意事项:

  • data.programs.client_name是数组吗
  • 您的代码是否正确识别
  • 如果您将
    %img
    标记替换为
    =data.programs.logo\u url[i]
    您有链接吗
haml标签没有问题。这证明:

%img.client-logo{:src => data.programs.logo_url[i], :alt => ""}/ 
[fotanus@thing~]$cat a.haml
-a=[]
-a[0]}
[fotanus@thing~]$haml a.haml

未定义的局部变量或方法'i'@clydealegro抱歉,我不太理解你的问题。您希望在HTML中得到什么样的输出?data.programs.logo\u url的内容是什么?如果顶部循环中有用作索引的
i
如何定义?应该输出一个url字符串。如果它是这样工作的“>,我只是不明白为什么它不能在haml格式下工作
”>
应该相当于
%img{:src=>data.programs.logo\u url[i]}
=image\u tag data.programs.logo\u url[i]
。用可能的警告编辑了答案。如果它使用此格式“>因此我认为在检索变量i时没有问题。如果使用haml格式,是否需要进行一些插值?
<% data.programs.client_name.each_with_index do |c, i| %>       
%article        
        .content 
        %header 
        .logo-wrap                  
            <img class="client-logo" src="<%= data.programs.logo_url[i] %>" />      
    %div 
        %a{:href => ""} Program Title
        %p <%= c %>
    %p <%= data.programs.program_description[i] %>
    <img class="program-photo" src="<%= data.programs.img_url[i] %>" />     
<% end %>
%img.client-logo{:src => data.programs.logo_url[i], :alt => ""}/ 
[fotanus@thing ~]$ cat a.haml 
- a = []
- a << 'image/path'
%img{:src => a[0]}

[fotanus@thing ~]$ haml a.haml 
<img src='image/path' />