Django Debug Toolbar et AngularJS, parse error

5 novembre 2015
Aymeric

Erreur de parsing et explications

Si vous utilisez Django Debug Toolbar, et que vous utilisez aussi AngularJS, il vous est peut etre arrivé d'avoir une erreur de parsing d'AngularJS.

Le problème c'est que pour afficher certaines données, Django Debug Toolbar va utiliser (( )) {{ }} [[ ]] comme caractères

Toute la problématique vient de la, j'ai configuré AngularJS pour qu'il utilise [[ ]] à la place de {{ }} .

Évidemment en voyant ces caractères AngularJS va essayer de parser, mais va planter.

Solution

La solution est de passer la div qui entour Django Debug Toolbar en ng-non-bindable pour que AngularJS n'essaye pas de faire sa tambouille à l'intérieur.

Pour cela, dans votre settings.py :

DEBUG_TOOLBAR_CONFIG = {
    'ROOT_TAG_EXTRA_ATTRS': 'ng-non-bindable',
}

Pour plus d'info, l'issue Github qui explique le problème sur github

Articles récents

Catégories

Tags