I'd like to generate a comment tree.
<ul>
<li> First comment
<ul>
<li> reply to first comment
<li> another reply to first comment
</ul>
</li>
</ul>
I have a Tree (Entity Comment)
structure.
I would want to have all the benefice of hamlet (#{commentContent comment}
will be protected against XSS).
How could I achieve a recursive Html rendering with Hamlet?
You probably cannot do it in plain hamlet, but you can create a helper function commentTree that you can access using ^{commentTree comments}
. This function would return Hamlet and can itself use [hamlet|<li>^{commentTree subcomment}|]
for the recursion and [hamlet|<u>#{commentContent comment}|]
for the safe interpolation.
(Inspired by this answer.)