Django 6.0リリース ―コンテンツセキュリティポリシーやTemplate Partialsをサポート

Django開発チームは2025年12月3日、WebアプリケーションフレームワークDjangoの最新バージョンDjango 6.0をリリースした。

DjangoはPythonで書かれたオープンソース(BSDライセンス準拠)のWebアプリケーションフレームワーク。Django 6.0の主な新機能は以下の通り。

コンテンツセキュリティポリシー(CSP)のサポート
コンテンツセキュリティポリシー(CSP)はWebサイトが読み込むコンテンツの種類やソースをブラウザに指示し、クロスサイトスクリプティング(XSS)などのコンテンツインジェクション攻撃からWebアプリケーションを守る仕組み。HTTPレスポンスヘッダにContent-Security-Policyをセットすることでブラウザを制御する。Djangoは組み込みツールを使用してCSPポリシーを直接適用または監視することができる。
部分テンプレート
Djangoテンプレート言語が部分テンプレート(Template Partials)をサポートするようになった。これによりコンポーネントを別々のファイルに分割することなく、よりモジュール化された保守性の高いテンプレートを作成できる。部分テンプレートはget_template()、render()、{% include %}、その他のテンプレート読み込みツールから参照することも可能。
バックグラウンドタスク
DjangoにHTTPリクエスト/レスポンスサイクル外でコードを実行するためのTasksフレームワークが組み込まれた。これにより、メールの送信やデータ処理などの作業をバックグラウンドにオフロードできる。なおDjangoはバックグラウンドタスクの作成とキューイングを処理するだけで、タスクを実行するメカニズムは提供しない。タスクの実行は別のプロセスやサービスなどの外部インフラストラクチャによって管理する必要がある。
Pythonの最新のメールAPIを採用
Djangoのメール処理でPython 3.6で導入された最新のメールAPIが使用されるようになった。メールメッセージの構造やエンコーディングがUnicodeフレンドリーなインターフェースで提供される。

Django 6.0のその他の新機能についてはリリースノートを参照。

Django 6.0は、DjangoプロジェクトのダウンロードページまたはPyPI(Python Package Index)から入手できる。

Django 6.0がサポートするPythonはPython 3.12、3.13、3.14で、前バージョンのDjango 5.2.x シリーズがPython 3.10および3.11をサポートする最後のシリーズとなる。Django 6.0のリリースに伴いDjango 5.2はメインストリームでのサポートが終了したが、LTSとしてセキュリティおよびデータ損失に関する修正は2028年4月まで提供される。

おすすめ記事

記事・ニュース一覧