2012-03-30 9 views
12

配列の情報を解析するHamlテンプレートから動的コンテンツを含む電子メールを生成しています。'array.each do | block |'生成されたHamlのステートメントの結果を含むHTML

基本的に、Hamlはいくつかのハッシュで満たされた配列を受け取ります。電子メールは、オブジェクト全体arraynameは、HTMLのに含まれて送信されるたび

%table 
    =arrayname.each do |object| 
    %tr 
     %td= object.name 
     %td= object.link 

:コードでは、私はこのようになりますブロックを持っています。これによりブロックのトップに表示される[#,#](より多くのオブジェクトがある場合は#)が表示されます。 CSSでこのテキスト部分を操作する方法はありません。そうしないと、私はそれを隠してしまいました。

[#<Release @id=181 @title="test" @amurl="test.com" @iturl="test.com" @cover="test.com" @date="2012-03-28" @artist_name="Test">, #<Release @id=182 @title="test" @amurl="test.com" @iturl="test.com" @cover="" @date="2012-03-31" @artist_name="Test">] 

この行は、IRBでコードを実行したときの結果と同じです。

これを防ぐ方法を教えてもらえますか?

答えて

20

Hamlの場合arrayname.eachには=を使用する必要はありません。実行するRubyコードは表示されていないからです。 コードを実行するには、コードにハイフンを使用します。

代わりに、この作業をする必要があります:

%table 
    - arrayname.each do |object| 
    %tr 
     %td= object.name 
     %td= object.link 
+1

豚肉私に横に。私は、Hamlのリファレンスをよく読んだり、ここに掲載したりするべきだった。私が試したばかげたこと...たくさんありがとう! – gagootch

関連する問題