python:django:settings_py

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
python:django:settings_py [2019/07/27 06:22] ともやんpython:django:settings_py [2020/12/25 00:35] (現在) ともやん
行 1: 行 1:
-<ifauth !@loggedinusers><html> +====== プロジェクトの設定 (django_project/settings.py) ======
-<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> +
-<script> +
-     (adsbygoogle = window.adsbygoogle || []).push({ +
-          google_ad_client: "ca-pub-0791334967460971", +
-          enable_page_level_ads: true +
-     }); +
-</script></html></ifauth> +
-====== プロジェクトの設定 (settings.py) ======+
 <code> <code>
 $ cd django_project/django_project $ cd django_project/django_project
行 15: 行 7:
 ==== ソースエンコーディングの設定 ==== ==== ソースエンコーディングの設定 ====
 日本語を使用しても問題が発生しないように、先頭行に以下の記述を追加してファイルを UTF-8 にて保存しなおす。\\ 日本語を使用しても問題が発生しないように、先頭行に以下の記述を追加してファイルを UTF-8 にて保存しなおす。\\
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
 </code> </code>
 +</WRAP>
  
 ==== プロジェクトパス (BASE_DIR) ==== ==== プロジェクトパス (BASE_DIR) ====
-BASE_DIR が提供されるように変更された。+BASE_DIR が提供されるように変更された。\\ 
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # Build paths inside the project like this: os.path.join(BASE_DIR, ...) # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
行 27: 行 22:
 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 </code> </code>
 +</WRAP>
 以前のバージョンでは、自分で os モジュールを import して、PROJECT_ROOT を定義する必要がある。\\ 以前のバージョンでは、自分で os モジュールを import して、PROJECT_ROOT を定義する必要がある。\\
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 import os import os
行 34: 行 31:
 PROJECT_ROOT = os.path.abspath(os.path.split(__file__)[0]) PROJECT_ROOT = os.path.abspath(os.path.split(__file__)[0])
 </code> </code>
 +</WRAP>
 PROJECT_ROOT の取得を追加する。(各動作環境のパスの差異を吸収する)\\ PROJECT_ROOT の取得を追加する。(各動作環境のパスの差異を吸収する)\\
-%%__file__%% == '/private/django_proj/settings.py' の場合、'/private/django_proj' を取得。\\ +**%%__file__%% == '/private/django_proj/settings.py'** の場合、**'/private/django_proj'** を取得。\\ 
-%%__file__%% == 'D:\My Projects\django_proj\settings.py' の場合、'D:\My Projects\django_proj' を取得。\\+**%%__file__%% == 'C:\My Projects\django_proj\settings.py'** の場合、**'C:\My Projects\django_proj'** を取得。\\
  
 ==== セキュリティキー (SECRET_KEY) ==== ==== セキュリティキー (SECRET_KEY) ====
-セキュリティキーは django-admin.py が生成したものを利用する。(他のプロジェクトのものをコピーして共有しないこと)+セキュリティキーは django-admin.py が生成したものを利用する。(他のプロジェクトのものをコピーして共有しないこと)\\ 
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # SECURITY WARNING: keep the secret key used in production secret! # SECURITY WARNING: keep the secret key used in production secret!
-SECRET_KEY = 'y*05eejz)j%+4&c-00i(crrgicz%2_pg+xonohqam0z0@7%f4('+SECRET_KEY = '00-ky$!7z2s)8p8)$qp+)vbs_(ajvfjes%=#9d_rrl&%ju0$(y'
 </code> </code>
 +</WRAP>
  
 ==== デバッグ設定 (DEBUG) ==== ==== デバッグ設定 (DEBUG) ====
 以下のコメントを追加して、デバッグとリリースの切り替えが簡単にできるようにしておく。(先頭 # を移動するだけ)\\ 以下のコメントを追加して、デバッグとリリースの切り替えが簡単にできるようにしておく。(先頭 # を移動するだけ)\\
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # SECURITY WARNING: don't run with debug turned on in production! # SECURITY WARNING: don't run with debug turned on in production!
行 52: 行 53:
 #DEBUG = False #DEBUG = False
 </code> </code>
 +</WRAP>
  
 ==== データベース接続設定 (DATABASES) ==== ==== データベース接続設定 (DATABASES) ====
行 57: 行 59:
 PostgreSQL のセットアップについては、[[linux:postgresql|PostgreSQL(Linux)]] を参照のこと。\\ PostgreSQL のセットアップについては、[[linux:postgresql|PostgreSQL(Linux)]] を参照のこと。\\
 データベースへの接続設定を行う。(以下は PostgreSQL の例。標準では sqlite3 の設定になっている。)\\ データベースへの接続設定を行う。(以下は PostgreSQL の例。標準では sqlite3 の設定になっている。)\\
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # Database # Database
-# https://docs.djangoproject.com/en/1.9/ref/settings/#databases+# https://docs.djangoproject.com/en/3.0/ref/settings/#databases 
 DATABASES = { DATABASES = {
     'default': {     'default': {
 #        'ENGINE': 'django.db.backends.sqlite3', #        'ENGINE': 'django.db.backends.sqlite3',
 #        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), #        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
-        'ENGINE':   'django.db.backends.postgresql_psycopg2',+        'ENGINE':   'django.db.backends.postgresql',
         'NAME':     'django_db',         'NAME':     'django_db',
         'USER':     'django',         'USER':     'django',
行 74: 行 78:
  
 </code> </code>
 +</WRAP>
  
 +<WRAP prewrap 100% #mintbl>
 ^  settings.py ファイル  ^^^ ^  settings.py ファイル  ^^^
 ^  設定項目  ^  設定値  ^  説明  ^ ^  設定項目  ^  設定値  ^  説明  ^
-|ENGINE  |'django.db.backends.postgresql_psycopg2 |'django.db.backends.' に 'postgresql_psycopg2', 'mysql', 'sqlite3', 'oracle' のいずれかを続けて指定する。  |+|ENGINE  |'django.db.backends.postgresql |'django.db.backends.' に 'postgresql', 'mysql', 'sqlite3', 'oracle' のいずれかを続けて指定する。  |
 |NAME  |'database_name'  |データベース名を指定する。  | |NAME  |'database_name'  |データベース名を指定する。  |
 |USER  |'db_user_name'  |ユーザー名を指定する。  | |USER  |'db_user_name'  |ユーザー名を指定する。  |
行 83: 行 89:
 |HOST  |' '  |ホスト名を指定する。空文字の場合は localhost と同じ。  | |HOST  |' '  |ホスト名を指定する。空文字の場合は localhost と同じ。  |
 |PORT  |' '  |ポートを指定する。空文字の場合はデフォルトポートになる。  | |PORT  |' '  |ポートを指定する。空文字の場合はデフォルトポートになる。  |
 +</WRAP>
  
 **メモ:** **メモ:**
 プロジェクト設定ファイルの INSTALLED_APPS に定義されている Django に付属のミドルウェア群('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites') はテーブルを必要とする。\\ プロジェクト設定ファイルの INSTALLED_APPS に定義されている Django に付属のミドルウェア群('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites') はテーブルを必要とする。\\
 そのため、これらのアプリケーションを使う前に以下のコマンドを実行して、データベースにテーブルを作成しておく必要がある。\\ そのため、これらのアプリケーションを使う前に以下のコマンドを実行して、データベースにテーブルを作成しておく必要がある。\\
 +
 +[[https://docs.djangoproject.com/ja/3.0/intro/tutorial02/|はじめての Django アプリ作成、その2 | Django ドキュメント | Django]]\\
 +[[https://docs.djangoproject.com/ja/3.0/ref/settings/#databases|設定 | Django ドキュメント | Django]]\\
  
 ==== 言語設定 (LANGUAGE_CODE) ==== ==== 言語設定 (LANGUAGE_CODE) ====
 言語コードを日本に設定する。 言語コードを日本に設定する。
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
-Language code for this installation. All choices can be found here: +Internationalization 
-http://www.i18nguy.com/unicode/language-identifiers.html+https://docs.djangoproject.com/en/3.0/topics/i18n/ 
 #LANGUAGE_CODE = 'en-us' #LANGUAGE_CODE = 'en-us'
 LANGUAGE_CODE = 'ja' LANGUAGE_CODE = 'ja'
 </code> </code>
 +</WRAP>
  
 ==== タイムゾーン設定 (TIME_ZONE) ==== ==== タイムゾーン設定 (TIME_ZONE) ====
 タイムゾーンをアジア/東京に設定する。 タイムゾーンをアジア/東京に設定する。
 +<WRAP prewrap 100% #mincode>
 <code python> <code python>
 # Local time zone for this installation. Choices can be found here: # Local time zone for this installation. Choices can be found here:
行 107: 行 121:
 TIME_ZONE = 'Asia/Tokyo' TIME_ZONE = 'Asia/Tokyo'
 </code> </code>
 +</WRAP>
 \\ \\
 http://127.0.0.1:8000/ にアクセスした様子。\\ http://127.0.0.1:8000/ にアクセスした様子。\\
-{{:python:django:django_run_devserver_ja.png?623|}}+{{:python:django:django_3.0_runserver_ja.png?623|}} 
 ==== その他 ==== ==== その他 ====
 以前のバージョンでは以下の設定も行っていた。\\ 以前のバージョンでは以下の設定も行っていた。\\
  • python/django/settings_py.1564176154.txt.gz
  • 最終更新: 2019/07/27 06:22
  • by ともやん