BASE_DIR = Path(__file__).resolve().parent.parent

BASE_DIR を取得する方法として、通常は以下のように設定されます。

python
import os from pathlib import Path # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent

ここでのポイントは、Path(__file__).resolve().parent.parent を使用して、現在のファイルの親ディレクトリの親ディレクトリを取得する方法です。この方法により、プロジェクトのルートディレクトリ (BASE_DIR) を決定することができます。

具体的に説明すると、上記のコードでは以下のことを行っています:

  • __file__ は現在の Python スクリプトのファイルパスを表します。
  • Path(__file__) はそのファイルパスを Path オブジェクトに変換します。
  • .resolve() はシンボリックリンクを解決し、絶対パスを取得します。
  • .parent は親ディレクトリを示します。.parent.parent とすることで、親ディレクトリの親ディレクトリ(つまりプロジェクトのルートディレクトリ)を取得します。
  • 最終的に BASE_DIR にはプロジェクトのルートディレクトリが設定されます。

このようにして、BASE_DIR を設定することで、プロジェクト内のファイルやディレクトリへのパスを簡単に操作できるようになります。

未分類

Posted by ぼっち