python:django:settings_py

差分

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

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
最新のリビジョン両方とも次のリビジョン
python:django:settings_py [2019/05/18 02:23] – 外部編集 非ログインユーザーpython:django:settings_py [2020/03/29 19:12] – [データベース接続設定 (DATABASES)] ともやん
行 1: 行 1:
 +<html>
 +  <style>
 +    #result pre, #mincode pre {
 +      /*height: 300px;*/
 +      overflow: scroll;
 +      overflow-x: hidden;
 +      font-size: 10px;
 +    }
 +    #mintbl table {
 +      font-size: 12px;
 +    }
 +    .dokuwiki .plugin_wrap table {
 +      width: auto;
 +    }
 +  </style>
 +</html>
 ====== プロジェクトの設定 (settings.py) ====== ====== プロジェクトの設定 (settings.py) ======
 <code> <code>
行 7: 行 23:
 ==== ソースエンコーディングの設定 ==== ==== ソースエンコーディングの設定 ====
 日本語を使用しても問題が発生しないように、先頭行に以下の記述を追加してファイルを 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, ...)
行 19: 行 38:
 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
行 26: 行 47:
 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!
行 44: 行 69:
 #DEBUG = False #DEBUG = False
 </code> </code>
 +</WRAP>
  
 ==== データベース接続設定 (DATABASES) ==== ==== データベース接続設定 (DATABASES) ====
行 49: 行 75:
 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',
行 66: 行 94:
  
 </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'  |ユーザー名を指定する。  |
行 75: 行 105:
 |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:
行 99: 行 137:
 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.txt
  • 最終更新: 2020/12/25 00:35
  • by ともやん