He estado tratando de descubrir cómo voy a hacer la recursión con Liquid. Tengo una aplicación en la que deseo darles a los usuarios control total sobre la representación del menú. Sin embargo, el menú está definido por un árbol, por lo tanto, la necesidad de funciones recursivas en Liquid.Recursividad en Liquid Markup/Liquid Templates
¿Cómo podría hacerlo? Después de hacer un poco de lectura, estaba pensando que me abordo de esta manera:
incluyen
Yo estaba pensando en usar include
esta manera:
<ul id='site_nav' class='nav'>
{{ include 'menu_item' with menu_items }}
</ul>
Y menu_item parcial es la siguiente:
<li id='{{menu_item.dom_id}}' class='{{menu_item.css_menu_class}}'>
{{ menu_item.name }}
<ul>
{{ include 'menu_item' with menu_item.children }}
</ul>
</li>
Sin embargo, como es editable por el usuario, tendré que hackear Liquid para que cargue parciales de un dato base. Dado que tomará mucho más tiempo para estudiar, quería preguntar primero si alguien ha abordado este problema antes.
- Si ha abordado este problema antes, ¿cómo renderizar algo de forma recursiva y permitir que sea editable por el usuario?
- Si no ha abordado esto antes, ¿qué camino recomendaría tomar? La forma en que detallo arriba?
Gracias de antemano!