Docs Menu
Docs Home
/ /

データベース接続の構成

このガイドでは、Diango プロジェクトのMongoDBへの接続を構成する方法を学習できます。

Dpango MongoDBバックエンドをインストールし、プロジェクトを作成 したら、プロジェクトの settings.pyファイルで DATABASES 設定を変更して、 MongoDBへの接続を構成できます。

Tip

Dpango MongoDBバックエンドをインストールし、 Diangoプロジェクトを作成する 方法については、 を使い始める チュートリアルをご覧ください。

次のコードに示すように、default キーを含む辞書に DATABASES を設定します。

DATABASES = {
"default": {
# Specify nested dictionary keys here
},
}

default キーを設定するには、その値としてネストされた辞書を割り当てます。 このネストされた辞書には次のキーがあります。

キー
説明

エンジン

接続に使用するバックエンドドライバー。 このキーを "django_mongodb_backend" に設定します。

Host

The hostname. For localhost connections, this key is optional.
For SRV connections, you must include a scheme prefix (mongodb+srv://).
You can also specify a connection URI in this key. For more information, see Automatically Configure Database Settings.
To specify more than one host, include all hostnames in one string. Use a comma to separate each hostname.
Example: "HOST": "mongodb://mongos0.example.com:27017,mongos1.example.com:27017"

名前

使用するデータベース。

USER

接続に認証 が必要な場合は、データベースに認証するためのユーザー名。

PASSWORD

接続に認証が必要な場合は、データベースユーザーのパスワード。

ポート

The port number on which the database server is listening. The default port is 27017.
For MongoDB Atlas connections, this key is optional.

オプション

A dictionary of additional connection options for the database. This key is optional.
To see a full list of connection options that you can set in the OPTIONS key, see the optional parameters for MongoClient in the PyMongo API documentation.

このセクションでは、DATABASES 設定を使用して次の方法で接続を構成する方法について説明します。

重要

v5.2.1 で追加

Diango MongoDBバックエンド v5.2.1 では、ネストされた キーで接続 URIHOST を指定するためのサポートが追加されます。以前のバージョンを使用している場合でも、接続を手動で構成したり、非推奨のparse_uri() 関数を使用したりできます。

接続 URI で接続設定を指定するには、次のネストされた default キーを設定します。

  • ENGINE: "django_mongodb_backend"に設定します。

  • HOST: 接続 URI に設定します。

  • NAME: 使用するデータベースの名前に設定します。

前のセクションで説明されているその他のキーはすべてオプションです。

この例では、ENGINEHOSTNAME キーのみを使用してMongoDBへの接続を構成しています。DATABASES 設定は次のアクションを実行します。

  • ユーザー名が my_user でパスワードが my_password のデータベースユーザーの認証情報を提供します

  • retryWrites 接続オプションを true に設定し、失敗した場合に特定の書込み操作を自動的に再試行するようにドライバーを構成します

  • w 接続オプションを majority に設定します。これにより、書込み操作を実行する前に、過半数のレプリカセットノードからの確認を待機するようにドライバーが構成されます

  • データベースを に設定します my_database

DATABASES = {
"default": {
"ENGINE": "django_mongodb_backend",
"HOST": "mongodb+srv://my_user:my_password@cluster0.example.mongodb.net/?retryWrites=true&w=majority",
"NAME": "my_database",
}

注意

DATABASES 設定で追加のキーを指定すると、それらのキーの値が接続 URI から解析された競合する値を上書きします。

default キー全体で接続情報を指定することで、接続設定を手動で構成できます。

この例では、辞書キーを使用して、前の例と同じデータベース接続を構成しています。

DATABASES = {
"default": {
"ENGINE": "django_mongodb_backend",
"HOST": "mongodb+srv://cluster0.example.mongodb.net",
"NAME": "my_database",
"USER": "my_user",
"PASSWORD": "my_password",
"PORT": 27017,
"OPTIONS": {
"retryWrites": "true",
"w": "majority",
},
},
}

MongoDBデータベース接続を構成するサンプルプロジェクトを表示するには、 はじめに チュートリアルの「 MongoDB接続の構成 」ステップを参照してください。

Diango 設定の詳細については、Diango ドキュメントの設定を参照してください。

戻る

次のステップ

項目一覧