0
#<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 %>

にあるものを取得しようとしてtextcaptionますか?

ありがとう

4

1 に答える 1

1

これは、それが(アプリケーションにインストールした gem が提供する、Ruby のネイティブ に似た)media.captionのインスタンスであることを示しています。そのインスタンスからキーと値のペアを取得する必要がありますHashie::MashHashieHashtextHashie

<% (@arr).each do |media| %>
    <%= media.caption.text %>
<% end %>

media関連のないインスタンスを適切にバイパスする方法についての質問に答えるには、次のcaptionようなことができます

<% (@arr).each do |media| %>
    <%= media.caption.text unless media.caption.blank? %>
<% end %>

またはそれらのcaption-lessmediaオブジェクトを前もって除外します

<% @arr.select{ |m| m.caption.present? }.each do |media| %>
    <%= media.caption.text %>
<% end %>
于 2013-04-16T04:04:10.497 に答える