Django : https, nginx, uwsgi et is_secure()

Si vous utilisez wsgi avec nginx pour servir vos application Django, vous avez peut être rencontré ce problème : request.is_secure() return false, alors que votre site est bien en HTTPS… La solution est très simple, dans votre fichier de conf Nginx ajoutez: server { listen 443; server_name my_domain.io;   ssl on; ssl_certificate /etc/nginx/certificates/certif.crt; ssl_certificate_key /etc/nginx/certificates/certif.key;Lire la suite

Model class django.contrib.contenttypes.models.ContentType doesn’t declare an explicit app_label

En voilà un warning pratique à régler encore. /[…]/python2.7/site-packages/django/contrib/contenttypes/models.py:159: RemovedInDjango19Warning: Model class django.contrib.contenttypes.models.ContentType doesn’t declare an explicit app_label and either isn’t in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9. class ContentType(models.Model): Et si vous utilisez le module auth, voua aurezLire la suite

Django : Renommer les fichiers FileFields

Pour des raisons diverses et variées vous pourriez avoir envie de renommer les fichiers que vous enregistrez avec un FileField. Le cas le plus classique est lors de l’upload de fichier par des membres, pour éviter qu’un fichier uploadé n’écrase un ancien fichier vous devez renommer celui-ci pour lui donner un nom unique.

Nous allons voir comment faire cela très simplement avec Django 😉

Django rest framework – Changer le json du login du TokenAuthentication

Le TokenAuthentication à un fonctionnement extrêmement simple, à la connexion l’API retourne un token qu’il faut ensuite passer dans le Header de chaque requête nécessitant d’être connecté.

Le truc vraiment cool, c’est que TokenAuthentication propose directement une view qui s’occupe de connecter un utilisateur. Cependant cette vue ne renvoie que le token, alors que parfois nous aimerions renvoyer plus d’information (l’id de l’utilisateur par exemple).

Voyons comment faire !