Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

リリースノート

次の新機能をご覧ください。

  • バージョン 6.0

  • バージョン 5.2

  • バージョン 5.1

このセクションでは、次のパッチ リリースで導入された変更を一覧にしています。

Django MongoDB バックエンド v6.0.3 リリースには、次の機能、改善点、修正が含まれています。

  • URLパターンで一致する ObjectId のサポートを追加します。詳細については、 APIドキュメントのURLディスパッチを参照してください。

  • PolymorphicEmbeddedModelFieldPolymorphicEmbeddedModelArrayField サブフィールドのインデックスのサポートを追加します。インデックスの作成ガイドの 埋め込みモデル サブフィールド インデックスのセクションに示されているように、EmbeddedModelField サブフィールド インデックスと同じ構文を使用します。

  • PolymorphicEmbeddedModelFieldPolymorphicEmbeddedModelArrayField のサブフィールドに一意の制約のサポートを追加しました。モデル化ガイドの 埋め込みフィールド制約 のセクションに示されているように、EmbeddedModelField サブフィールドの一意の制約と同じ構文を使用します。

  • SQLではなくMQLを出力するように str(queryset.query)操作を更新します。

  • Queryable Encryptionが構成されていない場合にエラーを生成し、暗号化されていないデータベースに暗号化されたフィールドを持つモデルの作成を防ぎます。

  • makemigrations コマンドに、埋め込みモデル参照を string としてシリアル化するように指示します。その結果、モデルが後で削除された場合は、移行においてモデル参照を調整する必要がありません。

  • 以前は具体的なエラーが返されなかった QuerySet.extra(where=...) メソッドと StringAgg(..., distinct=True) メソッドに NotSupportedError を追加します。

  • 埋め込みモデル フィールドのインデックスと制約の定義に、unique=Truedb_index=TrueMeta.constraintsMeta.indexesMeta.unique_together の使用を廃止します。代わりに、最上位モデルで EmbeddedFieldIndexEmbeddedFieldUniqueConstraint を使用します。新しい構文の詳細については、「埋め込みモデルのサブフィールド インデックス埋め込みフィールドの制約」を参照してください。

Django MongoDB バックエンド v6.0.2 リリースには、次の機能、改善点、修正が含まれています。

  • QuerySet.intersection() メソッドと QuerySet.difference() メソッドのサポートを追加しました。

  • UniqueConstraint コンストラクターの nulls_distinct パラメーターのサポートを追加します。これにより、NULL 値を持つドキュメントを1 つだけ保存できます。詳細を学ぶには、モデルの作成ガイドの「一意の制約の指定」を参照してください。

  • EmbeddedFieldIndexクラスを追加します。これにより、EmbeddedModelField 値と EmbeddedModelArrayField 値のサブフィールドでインデックスが有効になります。詳細については、インデックス作成ガイドの 埋め込みモデル サブフィールド インデックス を参照してください。

  • EmbeddedModelField 値と EmbeddedModelArrayField 値のサブフィールドに一意の制約を有効にする EmbeddedFieldUniqueConstraintクラスを追加します。詳細については、 モデル作成ガイドの 「埋め込みフィールド制約」 を参照してください。

  • 暗号化されたフィールドを持つモデルで Model.save() を呼び出すとエラーが発生するバグを修正します。

Django MongoDB バックエンド v6.0.1 リリースには、次の機能、改善点、修正が含まれています。

  • Queryable Encryptionのサポートを追加しました。詳しくは、「Queryable Encryption」のチュートリアルを参照してください。

  • 空間検索のサポートを追加しました。詳細については、クエリの指定ガイドの「地理空間値のクエリ」を参照してください。

  • Index システム チェックが 2 回実行中のを防ぎます。

  • DatabaseErrorIntegrityError の例外に例外メッセージを追加します。

  • メソッドが正しいフィールドをプロジェクトように、QuerySet.defer()QuerySet.only() の動作を修正します。

  • 集計パイプラインから $facet の使用が排除されるため、クエリのパフォーマンスが向上します。

警告

重大な変更

Dlango MongoDBバックエンド v6.0.0 は、次の重大な変更をリリースします。

  • django_mongodb_backend.utils.parse_uri() メソッドのサポートを廃止します。代わりに、DATABASES["HOST"] キーを使用してください。詳細については、 「データベース接続の構成」ガイドの 「データベース設定の自動構成」 を参照してください。

  • サポートされるMongoDB の最小バージョンを 6.0 から 7.0 に引き上げます。

このセクションでは、次のパッチ リリースで導入された変更を一覧にしています。

Django MongoDB バックエンド v5.2.4 リリースには、次の機能、改善点、修正が含まれています。

  • $match ステージから $lookup ステージに複雑な条件をプッシュすることで、$lookup集計ステージを使用する結合操作のパフォーマンスを向上させます

Django MongoDB バックエンド v5.2.3 リリースには、次の機能、改善点、修正が含まれています。

  • QuerySet.union() クエリが $projectパイプラインステージを重複するのを防ぎます。

  • MongoDB がこれらを式として解釈しないようにするには、Valueクラスを更新して、string、辞書、tune 値を $literal 演算子でラップします。同様に、モデルを更新するクエリが $literal 演算子で値をラップするようになりました。これも同じ理由です。

  • localFieldforeignField を使用して $lookup クエリを簡素化します。

Django MongoDB バックエンド v5.2.2 リリースには、次の機能、改善点、修正が含まれています。

  • より複雑なインデックスを作成できる次の SearchIndex 引数を追加します。

    • field_mappings

    • analyzer

    • search_analyzer

    詳細については、 インデックスガイドの「検索インデックス」を参照してください。

  • データにフィールドが存在しない場合に、データベース変換を使用して EmbeddedModel フィールドを含むモデルをロードするときに発生する KeyError 例外を修正します。

  • db_column 引数が EmbeddedModel フィールドに適用されることを確認します。

  • EmbeddedModelFieldPolymorphicEmbeddedModelField の検索インデックスタイプを embeddedDocuments から document に修正します。

  • データベース接続が初期化されなかった場合に発生する transaction.atomic() エラーを修正しました。

  • django_mongodb_backend.utils.parse_uri() メソッドを非推奨にします。このメソッドは将来のリリースで削除されます。

Django MongoDB バックエンド v5.2.1 リリースには、次の機能、改善点、修正が含まれています。

  • django_mongodb_backend.utils.parse_uri() メソッドを使用する代わりに、DATABASES["HOST"] キーで接続文字列を指定するためのサポートを追加します。詳細については、 「データベース接続の構成」ガイドの 「データベース設定の自動構成」 を参照してください。

  • 検索インデックスを追加または削除する移行操作に対して、サーバー上で操作が完了するまで待機するよう指示します。これにより、複数の操作を連続して実行中際の競合を防止します。

  • 次の演算子を使用する単純なクエリを構成して、$expr ではなく $match を使用し、これによりインデックスを使用できるようにします。

    • $eq

    • $in

    • $and

    • $or

    • $gt

    • $gte

    • $lt

    • $lte

Dlango MongoDBバックエンド v5.2.0 は、初期一般提供(GA)リリースです。GA 機能の詳細については、Django MongoDB バックエンドが一般提供になりましたのブログ記事を参照してください。

警告

重大な変更

D Jango MongoDBバックエンド v5.2.0beta3 リリースでは、次の重大な変更が導入されています。

  • 非文字列フィールドに対するパスワードなし検索のサポートを除きます。以前は、これらの検索は $toString 演算子を使用して入力を投じていました。MongoDB はクエリの実行中時にインデックスを使用できなかったため、パフォーマンスの問題が発生しました。

警告

重大な変更

このバージョン リリースでは、次の重大な変更が導入されています。

  • フォームとモデル検証で、django.db.models.SmallIntegerFielddjango.db.models.PositiveSmallIntegerField の値を 32 ビットに制限します。

  • データベースキャッシュのサポートを廃止します。これにより、データベースを侵害した攻撃者が、ピリオドでエンコードされたキャッシュ値を使用して、アプリケーションサーバー上で任意のコマンドを実行することを防止します。

D Jango MongoDBバックエンド v5.2.0beta2 リリースには、次の機能、改善点、修正が含まれています。

  • MongoDB Search クエリのサポートを追加しました。詳しくは、MongoDB Search クエリの実行するガイドを参照してください。

  • EmbeddedModelArrayField 値のサブクエリ サポートを追加します。詳細については、クエリの指定ガイドの「埋め込みモデル配列値のクエリ」を参照してください。

  • options パラメータを django_mongodb_backend.utils.parse_uri() メソッドに追加します。

  • データベーストランザクションのサポートを追加します。詳細については、トランザクションとセッションのガイドを参照してください。

  • 複数のモデルクラスに属することができるモデルインスタンスまたはモデル インスタンスのリストを保存する PolymorphicEmbeddedModelField フィールドと PolymorphicEmbeddedModelArrayField フィールドを追加します。詳細については、 「モデル作成ガイド」で 「多形埋め込みモデル データを保存する」 を参照してください。

  • GeoDiango のサポートを追加します。詳細については、 「地理空間データのモデル化ガイド」を参照してください。

  • JSONとして解析できる string を返すように QuerySet.explain() を更新します。

  • 32 ビットを超える重複値が誤って許可されていた IntegerField フィールドと PositiveBigIntegerField フィールドの一意の制約生成を修正します。int ではなく $type: long を使用するには、既存の一意の制約を再作成する必要があります。

  • 次のフィールドを bson.int64.Int64 値としてMongoDBに送信し、32 ビット未満の値に対する一意の制約を修正します。

    • IntegerField

    • BigIntegerField

    • PositiveIntegerField

    • PositiveBigIntegerField

    • DurationField

  • サーバー側チャンクの下限を排除することで、QuerySet のパフォーマンスを向上させます。

  • いくつかの簡単な条件を $match ステージから $lookup ステージにプッシュすることで、$lookup集計ステージを使用する結合操作のパフォーマンスを向上させます。

D Jango MongoDBバックエンド v5.2.0beta1 リリースには、次の機能、改善点、修正が含まれています。

  • モデル インスタンスのリストを保存するための EmbeddedModelArrayFieldフィールドを追加します。学ぶには、 「モデル作成ガイド」の 埋め込みモデル配列データの保存 を参照してください。

  • データベース変換 を使用して、null の ArrayField 値と base_field を持つモデルをロードするときに発生するクラッシュを修正します。

警告

重大な変更

このバージョン リリースでは、次の重大な変更が導入されています。

  • サポートされるPyMongo の最小バージョンを 4.6 から 4.7 に増やします。

  • django_mongodb_backend.utils.parse_uri()conn_max_age パラメータを削除します。Dmango MongoDBバックエンドは、デフォルトで 永続的な接続 を使用するようになりました。

D Jango MongoDBバックエンド v5.2.0beta0 リリースには、次の機能、改善点、修正が含まれています。

  • MongoDB Search およびベクトル検索インデックスを作成できる SearchIndex クラスと VectorSearchIndex クラスを追加します。詳細については、 インデックスの作成ガイドの 検索インデックスベクトル検索インデックス を参照してください。

  • デフォルトで 、PyMongo の接続プーリングを使用します。

  • フィールドのカスタム検索と変換のサポートを EmbeddedModelField に追加します。

  • Truncデータベース関数の tzinfo パラメータを使用するクエリの結果を修正します。

  • QuerySet.dates() メソッドと QuerySet.datetimes() メソッドのサポートを追加しました。

  • データベース変換 を使用する埋め込みモデル フィールドの QuerySet 結果の読み込みを修正しました。

このセクションでは、次のパッチ リリースで導入された変更を一覧にしています。

警告

重大な変更

このバージョンのリリースでは、次の重大な変更が導入されています。

  • データベースキャッシュのサポートを廃止します。これにより、データベースを侵害した攻撃者が、ピリオドでエンコードされたキャッシュ値を使用して、アプリケーションサーバー上で任意のコマンドを実行することを防止します。

D Jango MongoDBバックエンド v5.1.0beta4 リリースには、次の機能、改善点、修正が含まれています。

  • null の ArrayField 値を持つモデルと、base_field がデータベース変換を使用するモデルをロードするときに発生するクラッシュを修正します。

  • サーバー側チャンクの下限を排除することで、QuerySet のパフォーマンスを向上させます。

D Jango MongoDBバックエンド v5.1.0beta3 リリースには、次の機能、改善点、修正が含まれています。

  • フィールドのカスタム検索と変換のサポートを追加します EmbeddedModelField

  • Truncデータベース関数の tzinfo パラメータを使用するクエリの結果を修正します

  • QuerySet.dates() メソッドと QuerySet.datetimes() メソッドのサポートを追加しました

  • データベース変換を使用する埋め込みモデル フィールドの QuerySet 結果の読み込みを修正しました

警告

重大な変更

このバージョンのリリースでは、次の重大な変更が導入されています。

  • ArrayFieldsize パラメータの名前を max_size に変更します。固定長配列を強制するために size パラメータが使用されるようになりました。

D Jango MongoDBバックエンド v5.1.0beta2 リリースには、次の機能、改善点、修正が含まれています。

  • データベースキャッシュのサポートを追加しました。このサポートは後で v5.1.4 で削除されています。

  • ドキュメントキーの順序がモデルのフィールドの順序と一致しない場合に、QuerySet.raw_aggregate()フィールドの初期化を修正します。

警告

重大な変更

このバージョンのリリースでは、次の重大な変更が導入されています。

  • ObjectIdAutoField は整数値を受け入れなくなりました

D Jango MongoDBバックエンド v5.1.0beta1 リリースには、次の機能、改善点、修正が含まれています。

  • ネストされた埋め込みモデル フォームの保存 サポートを追加しました

  • 永続的なデータベース接続を修正します

  • 非同期操作のサポートを追加しました

  • django_mongodb_backend.utils.parse_uri() メソッドに db_name パラメータを追加します

  • django_mongodb_backend.routers.MongoRouter ルーターを追加します。これにより、Diango MongoDBバックエンド は埋め込みモデルのコレクションを作成せず、dumpdata コマンドに埋め込みモデルが含まれないようにします。

Dpango MongoDBバックエンド v5.1.0beta0 は最初のpublic previewリリースです。To learn more about the public preview features, see the 公式ブログ記事「Dmango MongoDBバックエンドがパブリック プレビューで利用可能になりました」を参照してください。

戻る

Djongo ODM アプリケーションの移行

項目一覧