Project

General

Profile

Autre #29234

variables non définies utilisées dans les templates django ?

Added by Frédéric Péters 6 months ago. Updated about 1 month ago.

Status:
Solution déployée
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
20 Dec 2018
Due date:
% Done:

0%

Patch proposed:
No
Planning:
No
Demande du club utilisateur:
No

Description

Avec 1.11 on obtient des logs DEBUG "Exception while resolving variable" quand une variable non définie est utilisée.

Quelle position adopter là-dessus ? Virer les logs ou s'interdire cette situation ? Autre chose ?


Related issues

Related to Hobo - Development #29149: Revoir le fonctionnement des logs de debug Solution proposée 17 Dec 2018

History

#1 Updated by Thomas Noël 6 months ago

Un des intérêts, pour moi, du passage à Django était d'éviter les vars().get('form_var_foo'). En Django, si la variable n'existe pas, c'est juste None, très bien, parfait. C'est d'ailleurs le même comportement que pour un attribut qui n'existe pas, genre webservices.chose.truc, et donc ça semble cohérent. Bref, je suis pour ignorer ces logs.

#2 Updated by Frédéric Péters 6 months ago

Bref, je suis pour ignorer ces logs.

Ok, reste à trouver comment mettre en place la suppression de ces logs.

        except Exception as e:
            template_name = getattr(context, 'template_name', None) or 'unknown'
            logger.debug(
                "Exception while resolving variable '%s' in template '%s'.",
                bit,
                template_name,
                exc_info=True,
            )

Ça veut sans doute dire virer le niveau DEBUG des logs Django.

#3 Updated by Frédéric Péters 6 months ago

#4 Updated by Emmanuel Cazenave 6 months ago

Frédéric Péters a écrit :

Ça veut sans doute dire virer le niveau DEBUG des logs Django.

Ou coller un handler vide ou d'un niveau supérieur à DEBUG au logger 'django.template' : https://docs.djangoproject.com/fr/2.1/topics/logging/#django-template

#5 Updated by Benjamin Dauvergne about 1 month ago

  • Assignee set to Benjamin Dauvergne

#6 Updated by Benjamin Dauvergne about 1 month ago

  • Assignee deleted (Benjamin Dauvergne)

Emmanuel Cazenave a écrit :

Frédéric Péters a écrit :

Ça veut sans doute dire virer le niveau DEBUG des logs Django.

Ou coller un handler vide ou d'un niveau supérieur à DEBUG au logger 'django.template' : https://docs.djangoproject.com/fr/2.1/topics/logging/#django-template

C'est déjà le cas dans debian_config_common.py :

        'django.template': {
            # too much logs on DEBUG level
            'handlers': [],
            'level': 'INFO',
            'propagate': True,
        },

#7 Updated by Benjamin Dauvergne about 1 month ago

  • Status changed from Nouveau to Information nécessaire

À mon avis on a rien à faire ici.

#8 Updated by Emmanuel Cazenave about 1 month ago

  • Status changed from Information nécessaire to Solution déployée

Cela a été fait dans #29239 .

commit 513db18396a5f765af6d9f1d0e0e21b95ef06175
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Fri Dec 21 14:43:35 2018 +0100

    debian_config_common: force INFO level on django.template logging (#29239)

Also available in: Atom PDF