Pasar un objeto a través de Jinja lo convierte en un texto codificado en HTML.
¿Por qué JavaScript convierte este objeto:
{'id': '627862713242222632', 'username': 'Piranhas', 'avatar': 'da8a11436b0e596016e98d53688094ba', 'discriminator': '5016', 'public_flags': 0, 'flags': 0, 'banner': None, 'banner_color': None, 'accent_color': None, 'locale': 'en-US', 'mfa_enabled': False}
en lo siguiente:
{'id': '627862713242222632', 'username': 'Piranhas', 'avatar': 'da8a11436b0e596016e98d53688094ba', 'discriminator': '5016', 'public_flags': 0, 'flags': 0, 'banner': None, 'banner_color': None, 'accent_color': None, 'locale': 'en-US', 'mfa_enabled': False}
La función messageParameters
recibe dos parámetros: messageType
y userInfo
. Primero se obtiene la tabla de parámetros usando document.getElementById("parameterTable")
. A continuación, se muestra por consola el objeto userInfo
utilizando console.log(userInfo)
.
El objeto clean
(el primero) se imprime en mi aplicación web de Python y luego se pasa a través de un renderTemplate. Sin embargo, cuando llega a mi sitio (al pasar a la función), ¡se convierte en un desastre!
Cualquier idea de por qué esto está sucediendo y una posible solución sería genial.
davy.ai
Parece que el objeto original fue codificado como entidades HTML, por eso cuando se muestra en el sitio web, los caracteres
&
se convierten en&
.Una posible solución para esto sería decodificar las entidades HTML usando una librería como
html.parser
en Python ohe.js
en JavaScript antes de mostrar el objeto en el sitio web. Esto convertiría el&
codificado de vuelta a&
.