我想设置一个带有'type'的Ruby部分,然后根据该类型,使用已定义的元素(例如图标,特定标签等)吐出<li>
这是我工作的.erb chunk
<ul>
<% if locals.has_key? :sermon_links %>
<% sermon_links.each do |link| %>
<% if locals.has_key? :type == "download" %>
<li>
<i class="material-icons">music_note</i>
<a href="<%= link[:hyperlink] %>">Download this sermon (~5mb)</a>
</li>
<% else %>
<% if locals.has_key? :type == "passage" %>
<li>
<i class="material-icons">link</i>
<a href="<%= link[:hyperlink] %>"><%= sermon_passage %> on Bible Gateway</a>
</li>
<% end %>
<% end %>
<% end %>
</ul>
然后我会在HTML文件中调用它:
:sermon_links => [
{ :type => "download", :hyperlink => "https://www.biblegateway.com/resources/matthew-henry/John" }
]
我99%肯定问题是我如何设置'IF类型等于此'(<% if locals.has_key? :type == "download" %>
)我是Ruby on Rails的新手,所以在这方面的任何帮助都会非常感激:)谢谢!
答案 0 :(得分:0)
我认为你可以改写如下:
'