Webframework: Django 4.2 führt Spalten- und Tabellenkommentare ein

Das neue LTS-Release des Django-Webframeworks ist auf den PostgreSQL-Adapter Psycopg 3 vorbereitet und stellt Kommentaroptionen für Spalten und Tabellen bereit.

In Pocket speichern vorlesen Druckansicht
Webframework: Django 4.2 führt Spalten- und Tabellenkommentare ein

(Bild: PureSolution/Shutterstock.com)

Lesezeit: 2 Min.

Das in Python entwickelte Open-Source-Webframework Django hat Version 4.2 erreicht. Damit liegt ein neues LTS-Release (Long-term Support) vor, das Security-Updates und Bugfixes zum Schutz vor Datenverlust bis mindestens April 2026 garantiert. Wichtige Neuerungen in Version 4.2 umfassen die Anpassung an den PostgreSQL-Adapter Psycopg 3 und Optionen zum Anlegen von Kommentaren in Spalten und Tabellen.

Während der allgemeine Support für Django 4.1 ebenso wie der erweiterte für Version 4.0 ausläuft, übernimmt Django 4.2 die Rolle des aktuellen LTS-Release. Bis zum Jahresende liefert das Django-Entwicklungsteam Abhilfe bei Absturzfehlern – insbesondere für solche, die auf Funktionsprobleme in neu eingeführten Funktionen sowie Regressionen aus älteren Versionen zurückzuführen sind. Erweiterten Support für die nächsten drei Jahre bietet das LTS-Release in Form von Sicherheits-Updates und Bugfixes, die dem Vermeiden von Datenverlusten dienen.

Zu den wichtigsten Neuerungen in Django 4.2 zählen die Optionen Field.db_comment und Meta.db_table_comment zum Einfügen von Kommentaren in Spalten und Tabellen. Darüber hinaus lassen sich die in Meta.db_table_comment festgelegten Tabellenkommentare mit dem Befehl AlterModelTableComment bearbeiten.

from django.db import models


class Question(models.Model):
    text = models.TextField(db_comment="Poll question")
    pub_date = models.DateTimeField(
        db_comment="Date and time when the question was published",
    )

    class Meta:
        db_table_comment = "Poll questions"


class Answer(models.Model):
    question = models.ForeignKey(
        Question,
        on_delete=models.CASCADE,
        db_comment="Reference to a question",
    )
    answer = models.TextField(db_comment="Question answer")

    class Meta:
        db_table_comment = "Question answers"

Breaking Changes, die Entwicklerinnen und Entwickler in den kommenden Monaten berücksichtigen müssen, ergeben sich in der Zusammenarbeit mit verschiedenen Datenbanken. So setzt Django 4.2 mindestens MariaDB 10.4 (ab Juni 2023), MySQL 8 (ab November 2023) und ab Dezember PostgreSQL 11 voraus. Beim PostgreSQL-Adapter für Python führt das neue Release des Webframeworks erstmals Psycopg 3 ein. Da die Datenbank-Engine django.db.backends.postgresql sowohl die bisherige 2.x-Reihe der Library wie auch die neue Psycopg 3.x-Linie nutzen kann, sollte sich das Update reibungslos durchführen lassen. psycopg2 gilt zunächst noch nicht als veraltet (deprecated), wird laut Ankündigung aber in einem der künftigen Django-Releases entfallen.

Weitere Details zu Django 4.2 finden sich im Blogbeitrag. Eine vollständige Übersicht aller Änderungen bieten die Release Notes.

(map)