PostgreSQL: DjangoでのPostgreSQLの使用
このドキュメントははじめにガイドの一部です。完全なガイドはこちらからご覧いただけます:PostgreSQLの始め方。
👋 Stackhero ドキュメントへようこそ!
Stackhero では、信頼性と高速性を重視したフルマネージドの PostgreSQL クラウド サービスをご提供しています:
- シームレスなスケーリングを実現する 無制限 の接続数とデータ転送。
- 直感的なデータベース管理が可能な PgAdmin Web UI を標準搭載。
PostGIS、TimescaleDB、PgVectorなどの人気 拡張機能を標準搭載。- ワンクリックで簡単に行える アップデート により、常に安全で最新の状態を維持。
- プライベートかつ専用インフラによる高い パフォーマンス と強固な セキュリティ。
Stackhero の PostgreSQL クラウドホスティング は、数分でご利用を開始できます。信頼性の高いデータベース環境で、データ管理の手間を大幅に削減しましょう。
まだインストールされていない場合は、PostgreSQLに接続するために使用されるpsycopgモジュールをインストールします:
pip install psycopg
この初期ステップでは、パスワードを直接settings.pyファイルに保存します。この方法はテスト用であり、安全ではありません。このドキュメントの後半で、ベストプラクティスの例を見つけることができます。
settings.pyファイルを開き、次の設定を追加します:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'HOST': '<XXXXXX>.stackhero-network.com',
'PORT': <PORT>,
'OPTIONS': {
'sslmode': 'require',
},
'NAME': 'admin',
'USER': 'admin',
'PASSWORD': '<ADMIN_PASSWORD>'
}
}
注意:この例は本番環境には推奨されておらず、テスト目的のみです!
接続が機能したら、資格情報を保存するためのより安全な方法を採用できます。次の例では、django-environを使用し、資格情報を.envファイルに保存します。
-
django-environをインストールします:pip install django-environ -
settings.pyファイルを開き、次のように変更します:import environ env = environ.Env() environ.Env.read_env() DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'HOST': env('STACKHERO_POSTGRESQL_HOST'), 'PORT': <PORT>, 'OPTIONS': { 'sslmode': 'require', }, 'NAME': 'admin', 'USER': 'admin', 'PASSWORD': env('STACKHERO_POSTGRESQL_ADMIN_PASSWORD') } } -
settings.pyと同じディレクトリに.envファイルを開くか作成し、次を追加します:STACKHERO_POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com STACKHERO_POSTGRESQL_ADMIN_PASSWORD=<ADMIN_PASSWORD> -
最後に、
.envを.gitignoreファイルに追加して、資格情報がGitリポジトリに保存されないようにします:
echo ".env" >> .gitignore