Django ajax select (Erreur 403)
J'ai utilisé pour un projet l'application Django ajax select permettant entre autres d'afficher des objects dans une liste via auto-completion en AJAX, très utile lorsqu'il s'agit d'afficher une liste avec un important volume de données voici un précédent article qui présente Django ajax select.
Solution pour l'erreur 403 Permission denied
En utilisant l'application je me suis confronté à une erreur 403 qui m'empêchait de lister les différents objects dans ma liste, ceci est normal c'est une sécurité mise en place par l'application permettant de sécuriser l'accès aux objets par l'utilisateur lambda, il faut obligatoirement par défault avoir un compte "staff", pour ne pas exposer le résultat JSON à tout le monde connaissant l'url.
Pour y remédier voici la solution trouver dans la documentation
def check_auth(self,request:
if not request.is_staff:
pass
Ce code est à insérer dans votre fichier lookups.py, il permet de ne pas lever d'exception si l'utilisateur n'est pas staff et tente d'accéder à l'url qui affiche la réponse JSON
Voilà j'espère que ça sera utile à certains
Publié le: Mercredi 15 juillet 2015