AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

Dpango とMongoDB機能の互換性

このページでは、Diango MongoDBバックエンドでサポートされている機能とサポートされていない機能に関する情報を見つけることができます。現在、将来のリリースが予定されている機能を見つけることもできます。ユーザーのリクエストに基づいてこれらの今後の機能を優先します。JIRA 問題を作成する ことで機能のサポートをリクエストできます。

Dlango MongoDBバックエンドは次の操作をサポートしていますが、パフォーマンスが低下する可能性があります。

操作
パフォーマンス ノート

$expr 操作

$expr演算子を使用するクエリは、実行が遅くなる可能性があります。この演算子は使用するインデックスを予測できず、コレクションスキャンを実行することが多いためです。QuerySet inルックアップを指定するクエリなど、一部の$expr 操作では、
を使用してクエリ結果を評価するため、パフォーマンスが低下します。このパフォーマンスの問題は、GA 以降のリリースで対処する予定です。

$lookup 操作

$lookup演算子を使用するクエリは低速で実行される可能性があります。パフォーマンスを向上させるには、可能な場合、 $lookup演算子の代わりに埋め込みモデルを使用することをお勧めします。 操作を削減する方法の詳細については、$lookup MongoDB Atlasドキュメントの「 $lookup 操作の削減 」ガイドを参照してください。

このセクションでは、Diango MongoDBバックエンドがさまざまなMongoDB機能をサポートしているかどうかを示します。

MongoDB の機能
現在のサポート

検索インデックス

部分的にサポートされています。次の詳細インデックス定義フィールドはサポートされていません。

  • numPartitions

  • analyzers

  • storedSource

  • synonyms

  • typeSets

MongoDB は、一部のデータ型の検索インデックスをサポートしていません。サポートされていない型のリストを表示するには、MongoDB Atlasドキュメントのデータ型の制限を参照してください。

ベクトル検索インデックス

部分的にサポートされています。Django MongoDBバックエンドを使用して、インデックス名、インデックスを作成するフィールド、類似性関数を指定する基本的なベクトル検索インデックスを作成できます。他のインデックス定義フィールドはすべてサポートされていません。

複合インデックス

埋め込みドキュメントインデックス

地理空間インデックス

Multikey indexes

部分インデックス

単一フィールド インデックス

Unique indexes

モデル作成後の埋め込みモデル インデックスの更新

サポート対象外

EmbeddedModelArrayField indexes

PolymorphicEmbeddedModelField および PolymorphicEmbeddedModelArrayField インデックス

サポート対象外

Dlango MongoDBバックエンドは現在、次の表に含まれていないすべてのMongoDBデータ型をサポートしています。サポートされているタイプの完全なリストを表示するには、ガイドの「 コレクションを表すモデルの作成 」の「 MongoDB BSONフィールド 」セクションを参照してください。

BSON データ型
現在のサポート

Object


埋め込みモデルと多形埋め込みモデルを使用してオブジェクトを表現できます。EmbeddedModelField フィールドを使用している場合、次の制限が適用されます。
* 外部キー フィールドはサポートされていません。
* 任意の埋め込みモデルフィールドまたは型なしの埋め込みモデルフィールドはサポートされていません。すべてのフィールドはEmbeddedModel クラスから派生する必要があります。

Regular Expression

サポート対象外 。ただし、GA 以降のリリースでこのタイプをサポートする予定です。

MongoDB の機能
現在のサポート

集計操作

部分的にサポートされています 。Dlango MongoDBバックエンドにはMongoDB集計フレームワークのカスタム Dlangoフィールドルックアップは含まれていませんが、 raw_aggregate() メソッドを使用できます。

MongoDB 検索クエリ

削除操作

地理空間クエリ


GiS QuerySet APIの代わりに地理空間クエリを実行するには、 raw_aggregate() メソッドを使用します。

挿入操作

読み取り操作

アップデート操作

MongoDB ベクトル検索クエリ

MongoDB の機能
現在のサポート

非同期サポート

認証

キャッシュされたデータストレージ

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

変更ストリーム

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

クライアント側フィールドレベル暗号化とQueryable Encryption

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

コレクションのインタラクション

データベース インタラクション

GridFS

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

1 つのコレクションに複数のモデル

サポート対象外

ドキュメントの表現


MongoDBドキュメントを表現するには、モデルを使用します。

スキーマ検証

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

時系列データ

トランザクション


次の制限付きで、Dpango MongoDBバックエンドのカスタム
トランザクションAPIQuerySet.union()
を使用できます。*トランザクション内では はサポートされていません。 * 保存ポイント、またはネストされたアトミック ブロックはサポートされていません。最も外側のアトミック ブロックはトランザクションを開始し、それ以降のアトミック ブロックは影響がありません。
* MongoDBデプロイはレプリカセットまたはシャーディングされたクラスターである必要があります。

このセクションは、Diango MongoDBバックエンドがさまざまな Dlango 機能をサポートしているかどうかを示します。

Dlango MongoDBバックエンドは現在、次の表に含まれていないすべての Diango フィールドをサポートしています。サポートされているフィールドの完全なリストを表示するには、モデルの作成ガイドの「Dango フィールド」セクションを参照してください。

Diango フィールド型
現在のサポート

AutoField

サポート対象外BigAutoField および SmallAutoField タイプもサポートされていません。代わりに、ObjectIdField を使用してください。

CompositePrimaryKey

サポート対象外

DateTimeField


マイクロ秒の粒度ではDateTimeField 値はサポートされていません。

DurationField


DurationField はマイクロ秒ではなくミリ秒を保存します。

ForeignKey

部分的にサポートされています 。このフィールド型は、次の制限付きで使用できます。

  • 可能であれば、$lookup 操作を使用しないように、ForeignKeyフィールドではなく EmbeddedModelField を使用する必要があります。 EmbeddedModelField はMongoDB埋め込みドキュメントをエミュレートし、パフォーマンスが ForeignKeyフィールドよりも向上します。 操作を削減する方法の詳細については、Atlas ドキュメントの「 $lookup 操作の削減 」ガイドを参照してください。$lookup

  • ForeignKeyフィールドでのCASCADE deletesのパフォーマンスは、EmbeddedModelField を使用する場合よりパフォーマンスが良くありません。

GeneratedField

サポート対象外

JSONField

部分的にサポートされています 。このフィールド型は、次の制限付きで使用できます。

  • Dlango MongoDBバックエンドは、 JSONとSQL null 値を区別できません。 Value(None, JSONField()) または isnull ルックアップを使用するクエリでは、 JSONとSQL null 値の両方が返されます。

  • Q(value__foo="bar") などの Q オブジェクトを含む一部のクエリは、通常どおりに動作しない可能性があります。

  • None 値をフィルタリングすると、フィールドが存在しないオブジェクトが誤って返されます。

Dlango MongoDBバックエンドは現在、次の表に含まれていないすべての Diango QuerySet メソッドをサポートしています。サポートされているメソッドを表示するには、Django ドキュメントのQuerySet APIを参照してください。

Diango QuerySet の機能
現在のサポート

delete()


このメソッドを使用して、複数のコレクションにまたがるクエリを実行することはできません。

difference()

サポート対象外

extra()

サポート対象外

intersection()

サポート対象外

パターン一致検索


これらのルックアップは、 クエリ文字列目的でのみ使用できます。パターンに一致するルックアップは、
iexactstartswithistartswithendswithiendswithcontainsicontainsregexiregex

prefetch_related()

サポート対象外

raw()

サポート対象外 。ただし、MongoDB の集計パイプライン構文を使用するクエリは raw_aggregate() メソッドで実行できます。

select_for_update()

サポート対象外

update()


このメソッドを使用して、複数のコレクションにまたがるクエリを実行することはできません。

Dlango MongoDBバックエンドは現在、次の表に含まれていないすべてのデータベース関数をサポートしています。関数の完全なリストを表示するには、Dpango ドキュメントのデータベース関数を参照してください。

Dmango 関数
現在のサポート

Chr

サポート対象外

ExtractQuarter

サポート対象外

MD5

サポート対象外

Ord

サポート対象外

Pad

サポート対象外

Repeat

サポート対象外

Reverse

サポート対象外

Right

サポート対象外

SHA1, SHA224, SHA256, SHA384, SHA512

サポート対象外

Sign

サポート対象外

Trunc

部分的にサポートされていますTruncDate および TruncTimeデータベース関数の tzinfo パラメータはサポートされていません。

Diango の機能
現在のサポート

Diango Admin

Diango 認証

GeoDjango

部分的にサポートされています 。この Webフレームワークは、次の制限付きでサポートされています。

  • GiS QuerySet API はサポートされていません。

  • MongoDB は、4326。 以外の空間参照システム識別子をサポートしていません。

  • RasterField はサポートされていません。

Diango MongoDBバックエンドは Diango の形式をサポートしていますが、PolymorphicEmbeddedModelFieldPolymorphicEmbeddedModelArrayField はフォームに表示されません。

Dlango MongoDBバックエンドは現在、次の表に含まれていないすべてのマネジメント コマンドをサポートしています。コマンドの完全なリストを表示するには、Dpango ドキュメントの利用可能なコマンドを参照してください。

Diango コマンド
現在のサポート

createcachetable

サポート対象外

dumpdata

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

inspectdb

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

loaddata

サポート対象外 。ただし、GA 以降のリリースでこの機能のサポートを追加する予定です。

Diango の機能
現在のサポート

移行コマンドによるインデックスの作成、削除、更新

部分的にサポートされています 。埋め込みモデルまたは配列フィールドのインデックスを更新することはできません。

サポート対象外

migrate --fake-initial オプション

サポート対象外

埋め込みモデルの移行

部分的にサポートされています 。移行コマンドは、埋め込みモデル フィールドまたは PolymorphicEmbeddedModelField または PolymorphicEmbeddedModelArrayField が参照する埋め込みモデルへの変更を検出しません。

ライブラリ
現在のサポート

部分的にサポートされています 。このライブラリのユースケースと制限の詳細については、Dpango MongoDB CLIドキュメントのDiango フィルターを参照してください。

部分的にサポートされています 。このライブラリのユースケースと制限の詳細については、Dpango MongoDB CLIドキュメントの「Diango 残りフレームワーク」を参照してください。

部分的にサポートされています 。このライブラリのユースケースと制限の詳細については、Diango MongoDB CLIドキュメントのDiango allauthを参照してください。

部分的にサポートされています 。このライブラリのユースケースと制限の詳細については、Diango MongoDB CLIドキュメントの「Diango デバッグ ツールバー」を参照してください。