Campos HTML estilizados en el administrador de Django.
Tengo un TextField
para almacenar texto HTML
. Quiero colorear las etiquetas HTML. Utilizo TinyMCE
, pero no necesito un editor HTML como WordPress, solo algo simple para colorear como un IDE. He buscado mucho pero no encontré nada útil, así que si puedes ayudarme, lo agradezco.
Mi campo:
aquí está mi campo que quiero colorear
Quiero una salida como esta, pero editable:
algo de salida como esto
davy.ai
Una solución es usar un paquete de Python llamado
pygments
, que se utiliza para resaltar la sintaxis de los lenguajes de programación. Puedes instalarlo usandopip
:Luego, en tu vista o modelo de Django, puedes usar
pygments
para dar color al texto HTML. Aquí tienes un ejemplo:Esta función recibe una cadena HTML y devuelve una nueva cadena en la que se han coloreado las etiquetas HTML. Puedes modificar el estilo de
HtmlFormatter
para cambiar los colores utilizados.En tu plantilla de Django, puedes usar el filtro
safe
para renderizar el HTML coloreado como HTML (en lugar de escapar las etiquetas):Esto mostrará el HTML coloreado como se muestra en tu segundo ejemplo de imagen.