[英]Ruby on Rails what does this hash output mean?
#<Hashie::Mash created_time="1366084479" from=#<Hashie::Mash
full_name="alyssabri_" id="24110592" username="ally"> id="4350706"
text="Some Text">
这是什么意思? 当我这样做时,我明白了:
<% (@arr).each do |media| %>
<%= media.caption %>
<% end %>
我试图让text
这是caption
?
谢谢
这告诉您media.caption
是Hashie::Mash
的实例(您在应用程序中安装的gem提供了Hashie
,类似于Ruby的本机Hash
)。 您需要从该Hashie
实例获取text
键/值对
<% (@arr).each do |media| %>
<%= media.caption.text %>
<% end %>
要回答有关如何在没有相关caption
情况下优雅地绕过这些media
实例的问题,您可以执行以下操作
<% (@arr).each do |media| %>
<%= media.caption.text unless media.caption.blank? %>
<% end %>
或过滤掉那些无caption
media
对象
<% @arr.select{ |m| m.caption.present? }.each do |media| %>
<%= media.caption.text %>
<% end %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.