2016-08-03 6 views
0

私はテンプレートに画像を埋め込む方法を知っています。 See this question。私の質問は、ループの中でそれを行う方法です:テンプレートに画像を埋め込むループ内のHTML Velocity

<table> 
    #foreach($object in $objects) 
     <tr> 
      <td> 
       <img src="cid:${image_cid}"/> 
      </td> 
... 

問題は、私は例えば、動的なユニークなCIDプレースホルダを作成する必要がある:

<img src="cid:${object1_image_cid}"/> 
.... 
<img src="cid:${object2_image_cid}"/> 

私は内部の変数を使用して試してみました$ {image_cid}変数ですが、それはちょうどクラッシュします。例えば試しました

${$object.id image_cid} 

これを解決する方法や方法はありますか?

+0

をあなたは ''を意味しますか? –

+0

そのようなものです。すべてのcidsを生成し、それらをオブジェクトに貼り付けますか?うーん –

+0

多分あなたはhttp://stackoverflow.com/questions/18941773/how-to-add-image-in-email-velocity-transformer-templates-from-classpathを見てみる必要があります –

答えて

0

この提案には、Ismailに感謝します。ここに私がしたことがあります。私のJavaコードでは、私は、例えば、オブジェクトの過渡フィールドにCIDのすべてを設定します。

for (Object object : objects) { 
     String artworkCid = email.embed(file); 
     object.setCid(artworkCid); 
} 

次に、テンプレートに:

#foreach($object in $objects) 
     <tr> 
      <td> 
       <img src="cid:$object.cid" /> 

(オブジェクトへのすべてを難読化)

関連する問題