7
from django.conf import settings
def my_view(self, request, *args, **kwargs):
if 'LOCAL' in settings and settings.LOCAL:
# do something
TypeError at ... argument of type 'LazySettings' is not iterableL'argument django de type 'LazySettings' n'est pas itérable; comment alors vérifier si un paramètre existe?
Comment vérifier si un paramètre existe? Sinon, j'obtiens une erreur d'attribut.
Um je suis excité au sujet de votre réponse. mais ça échoue toujours. >>> si getAttr (paramètres, 'JUNK'): ... print 'bonjour' ... retraçage (appel le plus récent en dernier): Fichier "", ligne 1, dans Fichier «/Users /ben/Envs/menus_proto/lib/python2.7/site-packages/django/utils/functional.py ", ligne 277, dans __getattr__ return getattr (self._ wrapped, name) AttributeError: l'objet 'Settings' n'a pas de valeur Attribut 'JUNK' –
Vous devez fournir un troisième argument par défaut, à savoir 'getattr (paramètres, 'name', None)'. Ou, puisque vous n'avez pas besoin de la valeur réelle, utilisez 'hasattr (settings, 'name')' qui vérifie simplement le nom au lieu d'obtenir sa valeur. –
J'ai mis à jour la réponse. –