Estoy creando un servicio en el que deseo permitir a los usuarios finales editar plantillas HTML para páginas web que permitan el acceso a "variables" específicas para su inclusión en la plantilla.Rails Motores de plantillas para el usuario final: Liquid vs Moustache vs. Others?
Sé que el líquido fue diseñado para este propósito, es seguro (al menos relativamente) y está en uso de producción pesada. Sin embargo, considero que el lenguaje es bastante complejo para los usuarios finales en comparación con algo como Moustache.
Bigote suena genial, pero me preocupa la seguridad ... ¿alguna vez se ha utilizado para plantillas de usuario final?
Básicamente estoy en busca de un motor de plantillas puedo usar w/rieles para los usuarios finales que es:
- seguro - no permitirá la ejecución de código por el usuario ... al menos no en el servidor. Los usuarios podrán insertar javascript en el lado del cliente.
- Potente - permite a los usuarios finales crear prácticamente cualquier página web que pueden imaginar el uso de las "variables" suministrados y en el contexto de # 1
- simple - la sintaxis es clara y fácil para que los usuarios finales se aplican
- Puntos de bonificación si se admite la representación de la sintaxis de la plantilla en JavaScript y en otros idiomas.
Líquido meets 1 & 2, pero no 3-4. Moustache cumple con 2-4, pero no estoy seguro acerca de # 1 y eso no es negociable.
Agradecemos enormemente cualquier idea, experiencia o comentario.
Realmente necesito que la representación se realice en el lado del servidor por dos razones: 1. Google y otros bots de búsqueda deben poder indexar la página completamente renderizada con las "variables" ya expandidas 2. Al tener JS habilitado es bastante frecuente ahora, no quiero que sea un requisito de la aplicación – marcusmateus
5min ?? @Winfield Necesita aclarar el n. ° 1. No me preocupaban las cadenas no guardadas en la plantilla, ya que permití JS en las plantillas ... se planteó como una preocupación en otro foro. Pero, realmente necesita tener la prestación sucede en el lado del servidor, por dos razones: 1. Google y otros robots de búsqueda tienen que ser capaces de indexar la página totalmente rendido w/las "variables" ya ampliado 2 . Aunque tener JS habilitado es bastante frecuente ahora no quiero que sea un requisito de la aplicación Estoy de acuerdo en que BBcode/TinyMCE son más simples, pero su uso realmente quitaría el poder de la aplicación (# 2) – marcusmateus
Siempre que tenga cuidado con los métodos que expone en su vista, creo que Moustache será seguro y se adaptará a sus necesidades. La sintaxis no es horrible; es probable que sea tan fácil como pueda llegar en cuanto a un motor de plantilla. Consulte [la demostración] (http://mustache.github.com/#demo) para ver un ejemplo. –