0
votes

Erreur de syntaxe sur la vue avec si sinon si la branche

J'ai une vue où j'essaie de détecter quel groupe un utilisateur connecté à un membre est désactivé et affichant une page appropriée, ou de les rediriger à l'écran de connexion.

Peu importe comment j'essaie d'écrire ceci, Je continue d'avoir une erreur de syntaxe. Rien de plus clair que ça. P>

My View Pour le moment est le suivant: P>

from django.shortcuts import render
from django.shortcuts import redirect


def loginCheck(request):
    if User.objects.filter(pk=userId, groups__name='red').exists():
        return render(request, 'colors/red.html', {})
    elif User.objects.filter(pk=userId, groups__name='blue').exists()
        return render(request, 'colors/blue.html', {})
    elif User.objects.filter(pk=userId, groups__name='staff').exists()
        return redirect('/site/staff/')
    else:
        return redirect('/site/login/')


1 commentaires

Il vous manque un : à la fin de elif ...


3 Réponses :


0
votes

Vous êtes omis deux colons à la fin des deux états moyens


0 commentaires

0
votes

Vous manquez le côlon : à la fin des lignes ELIF.


0 commentaires

0
votes

Vous pouvez utiliser le décorateur @permission_requiked qui fait automatiquement ce dont vous avez besoin: il redirigea l'utilisateur à la page de connexion s'il ne dispose pas de la permission appropriée. Voir ici .

(Autant de personnes ont souligné, il vous manque un colon dans la déclaration elif , mais il vaut mieux utiliser le décorateur afin que vous le fassiez plus djangois)


0 commentaires