Django学習メモ
Django学習メモ
実践Django Pythonによる本格Webアプリケーション開発 (Programmer’s SELECTION) | 芝田 将 |本 | 通販 | Amazon
プロジェクトの作成
PS D:\Users\user\django_practice> django-admin startproject djangosnippets
実行すると下記のフォルダ、ファイルが作成される。
django_practice
└─djangosnippets
├─djangosnippets
│ ├─asgi.py
│ ├─settings.py // Djangoプロジェクトの様々な設定を記述する
│ ├─urls.py // ルーティングに関する設定を記述する
│ ├─wsgi.py
│ └─__init__.py
└─manage.py // django-adminコマンドを使用する際のショートカットスクリプト
djangosnippets\settings.py
で言語設定とタイムゾーンを変更する。
テーブルを作成する。
PS D:\Users\user\django_practice\djangosnippets> python manage.py migrate
⇒db.sqlite3
が作成される。
manage.py
の各種サブコマンド
PS D:\Users\user\django_practice\djangosnippets> python manage.py help
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
[auth]
changepassword
createsuperuser
[contenttypes]
remove_stale_contenttypes
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
[sessions]
clearsessions
[staticfiles]
collectstatic
findstatic
runserver
アプリケーションの作成
djangosnippets\settings.py
にアプリケーションの一覧が登録されている。
下記のコマンドで sunippets
というアプリケーションを作成する。
PS D:\Users\user\django_practice\djangosnippets> python manage.py startapp snippets
※この時点で django_practice\djangosnippets\snippets
が存在するとエラー。
実行すると下記のフォルダ、ファイルが作成される。
django_practice
└─djangosnippets
├─djangosnippets
│ ├─settings.py // Djangoプロジェクトの様々な設定を記述する
│ ├─urls.py // ルーティングに関する設定を記述する
│ …
│
├─manage.py
│ // 以下が startapp snippets で作成されるもの
└─snippets
├─migragtions // マイグレーションファイルが生成される
├─admin.py // 管理画面の設定を記述する
├─apps.py // アプリケーションの様々な状態にフックする処理を記述する
├─models.py // データベースのスキーマを定義する
├─tests.py // テストを記述する
├─views.py // ビューを記述する
└─__init__.py
djangosnippets\settings.py
内の INSTALLED_APPS
に "snippets.apps.SnippetsConfig"
を追加する。
snippets\tests.py
にテストを書く。
テストの実行は、
PS D:\Users\user\django_practice\djangosnippets> python manage.py test
snippets\views.py
にビュー関数を定義する。
djangosnippets\urls.py
にルーティングの設定を追加する。snippets\urls.py
を新たに作成してこちらに設定を記述することもできる。
データベースとの連携
snippets\models.py
にモデルを定義する。
manage.py makemigrations
コマンドにより、マイグレーションファイルを作成する。
manage.py migrate
コマンドにより、マイグレーションファイルからSQLを発行する。
管理画面から Snippet
テーブルのデータを追加・削除・編集できる admin
権限を持つユーザーを作成する。
from django.contrib import admin
from snippets.models import Sunippet
# Register your models here.
admin.site.register(Sunippet)
PS D:\Users\user\django_practice\djangosnippets> python manage.py createsuperuser
データベースの基本操作
PS D:\Users\user\django_practice\djangosnippets> python manage.py shell