2016-08-09 4 views
0

タイプのハッシュマップで繰り返し処理しています。かなりうまくいく。私の問題は、必要な出力の後に、ハッシュマップ全体を文字列として出力することです。".each"ループの後に全体のRUBYハッシュマップが出力される

Screenshot

何が起こっていますか?私のアプリがそれをやり遂げるのを防ぐにはどうすればいいですか?

編集:申し訳ありませんが、愚かなことを..完全に忘れてしまった!

ソース・コード:

<div style="display: inline-block"> 
    <%= @tag_color_hash.each do |tag, color| %> 
     <%= f.label tag, :style => "border-color: #{color}", :class => 'tags'%> 
    <% end %> 
</div> 
+0

ソースコードを添付できますか? Ruby irbでは、最後に返されたものが表示されましたが、irbではありません。 – PatNowak

+0

これをRailsコンソールやWebデバッガで見ているなら、私はそれについて心配しません。 @PatNowakによると、行が実行された後、オブジェクトはREPLで印刷されますが、ウェブページ上であなたのアプリケーションを訪問している場合、これは起こりません。 –

+0

ローカルサーバー(localhost:****/foo/bar)のページにアクセスしています。だからこれは起こらないはずですよね? どうすればこの問題を回避できますか? 出力されるハッシュは@tag_color_hash – fr0styy

答えて

1

あなた.eachループ内=記号を含めましたので、あなたがこれを取得しています。 <%=と書くと、.erb通訳者に、角括弧内の内容がページに表示されることを伝えています。

<% @tag_color_hash.each do |tag, color| %> 

にライン

<%= @tag_color_hash.each do |tag, color| %> 

を変更し、あなたの問題が修正されるはずです。 Here's a link to a useful StackOverflow answer

関連する問題