Django 1.10 bringt Volltextsuche für PostgreSQL

Außer der Erweiterung für PostgreSQL bekommt das Webframework ein neues Middleware-System zum Bearbeiten von Ein- und Ausgaben und erlaubt nun Unicode für Nutzernamen.

In Pocket speichern vorlesen Druckansicht
Django 1.10 bringt Volltextsuche für PostgreSQL
Lesezeit: 2 Min.

Acht Monate nach der Veröffentlichung von Django 1.9 ist das in Python geschriebene Webframework, das sich vor allem an Entwickler datenbankgestützter Anwendungen richtet, in Version 1.10 erschienen. Eine der größeren Neuerungen betrifft Nutzer von PostgreSQL, die über Funktionen im django.contrib.postgres.search-Modul auf die Engine für Volltextsuche der Datenbank zugreifen. Damit können Entwickler beispielsweise die native Ranking-Funktion von PostgreSQL nutzen, um Ergebnisse nach Relevanz zu sortieren. Die Dokumentation von der einfachen spaltenbasierten Suche über SearchVector-Objekte bis zur Gewichtung einzelner Felder für Abfragen ist auf der Django-Website zu finden.

Außerdem haben die Macher das Middleware-Framework überarbeitet, Djangos Plug-in-System zum Verarbeiten und Ändern von Ein- und Ausgaben. Das alte System gilt damit als deprecated (überholt), aber die Klasse django.utils.deprecation.MiddlewarMixin erlaubt die Verwendung von Middleware, die sowohl mit der neuen MIDDLEWARE- als auch der alten MIDDLEWARE_CLASSES-Definition kompatibel ist. Eine Anleitung zur Verwendung der Klasse ist ebenfalls in der Dokumentation zu finden.

Zu den weiteren Neuerungen gehört, dass Django nun offiziell Unicode-Zeichen für Nutzernamen unterstützt. Per Default gilt das ausschließlich für Python 3.x. Entwickler können das Standardverhalten für die jeweilige Sprachversion durch Verwendung des ASCIIUsernameValidator beziehungsweise UnicodeUsernameValidator überschreiben.

Die vollständige Liste der Änderungen steht in den Release Notes. Das Team hat allgemeine Hinweise zum Upgrade auf die aktuelle Version veröffentlicht. Django arbeitet weiterhin mit Python 2.7, 3.4 und 3.5 zusammen. Das Webframework ist quelloffen unter der BSD-Lizenz verfügbar. Die Download-Seite bietet verschiedene Methoden, mit denen Entwickler die aktuelle Version herunterladen können. (rme)