Aller au contenu
Makersquad

Django REST Framework 3.18 est sorti

par Makersquad ·

Logo de Django REST framework sur fond dégradé

Date de sortie : 7 août 2026

Documentation officielle : Release notes DRF

Django REST Framework 3.18 est sorti le 7 août 2026. Il suit Django 6.1, retire les plus anciennes versions de Django et change le format des erreurs des sérialiseurs de liste.

Les nouveautés principales

Support de Django 6.1

DRF 3.18 prend en charge Django 6.1.

Accents ignorés dans SearchFilter

SearchFilter prend en charge unaccent, ce qui permet de rechercher sans tenir compte des accents.

Décorateur @throttle_scope

Le nouveau décorateur @throttle_scope permet de définir un scope de throttling sur les vues fonctionnelles.

nulls_distinct sur UniqueTogetherValidator

UniqueTogetherValidator gère maintenant nulls_distinct, en cohérence avec les contraintes d’unicité de Django.

Corrections notables

  • Compatibilité avec Django 6.1 pour l’analyse des en-têtes (split_header_value remplace cc_delim_re).
  • Le paramètre choices est inclus pour les champs non éditables.
  • Accessibilité améliorée du template de pagination par curseur dans l’API navigable.
  • Correction des mises à jour partielles par formulaire impliquant un ListField.
  • Correction d’un plantage lié aux permissions des actions supplémentaires dans l’API navigable.
  • Les valeurs de représentation non hashables de BooleanField sont gérées.
  • Schéma OpenAPI corrigé pour les bornes numériques à zéro des enfants de ListField.
  • set_rollback ne restaure que les connexions initialisées.
  • Un DictField en entrée HTML ne renvoie plus un dict vide pour les champs absents.
  • Erreur explicite pour les mises à jour de liste avec unicité multi-champs non supportées.

Changements incompatibles

Versions de Django abandonnées

DRF 3.18 abandonne le support de Django 4.2, 5.0 et 5.1. Avant de mettre à jour, vérifiez que votre projet tourne sur une version de Django encore supportée.

Format des erreurs de liste

Les erreurs d’un sérialiseur utilisé avec many=True sont désormais renvoyées au format dict. Si votre client front ou vos tests lisent ces erreurs, c’est le point à vérifier en premier lors de la montée de version.

À retenir

La montée vers 3.18 demande surtout de vérifier votre version de Django et le format des erreurs de liste. Des correctifs sont déjà sortis depuis, jusqu’à la 3.18.3 du 6 octobre 2026.

Échanger avec un expert Django

De l’idée au marché. Makersquad conçoit des logiciels sur mesure, pensés pour durer, avec de petites équipes d’experts autonomes. Depuis 2018.