Projet

Général

Profil

Autre #29234

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

Ajouté par Frédéric Péters il y a plus de 5 ans. Mis à jour il y a presque 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
20 décembre 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non
Club:
Non

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 ?


Demandes liées

Lié à Hobo - Development #29149: Revoir le fonctionnement des logs de debugFermé17 décembre 2018

Actions

Historique

#1

Mis à jour par Thomas Noël il y a plus de 5 ans

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

Mis à jour par Frédéric Péters il y a plus de 5 ans

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

Mis à jour par Frédéric Péters il y a plus de 5 ans

#4

Mis à jour par Emmanuel Cazenave il y a plus de 5 ans

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

Mis à jour par Benjamin Dauvergne il y a presque 5 ans

  • Assigné à mis à Benjamin Dauvergne
#6

Mis à jour par Benjamin Dauvergne il y a presque 5 ans

  • Assigné à Benjamin Dauvergne supprimé

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

Mis à jour par Benjamin Dauvergne il y a presque 5 ans

  • Statut changé de Nouveau à Information nécessaire

À mon avis on a rien à faire ici.

#8

Mis à jour par Emmanuel Cazenave il y a presque 5 ans

  • Statut changé de Information nécessaire à 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)

Formats disponibles : Atom PDF