0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DjangoとDockerの自分のための備忘録

Last updated at Posted at 2023-02-09

Djangoの中身がわからない自分へ

##djangoのdocker導入参考url
https://engineer-ninaritai.com/docker-django/

#プロジェクト作成
docker run -v "$PWD":/code djangotest django-admin startproject mysite .
"$PWD"でカレントディレクトリを指定

#起動
docker run -v "$PWD":/code -d -p 8000:8000 djangotest python manage.py runserver 0.0.0.0:8000
docker run --rm -v "$PWD":/code  -p 8000:8000 djangotest python manage.py runserver 0.0.0.0:8000
オプション
-d  デタッチモードでdockerコンテナを起動する
   デタッチモードとは?
    コンテナ内に入らず、バックグラウンドで動作させることができる
-rm コンテナ内でのコマンドの実行が終わったらコンテナを自動で削除する

docker環境でのサーバ起動呪文

docker run --rm -v "$PWD":/code/ -p 8000:8000 my-django-app python manage.py runserver 0.0.0.0:8000

sercret key対策

そのままgithubにpushするとgitguardianメールが来る、
https://de-milestones.com/django-secret-key-unpublish/

始め方

startproject コマンドでプロジェクトを作成
コマンド記入
startapp コマンドで必要なアプリを作成(アプリは複数作成可)
コマンド記入

フレームワークの中身の流れ

  1. ユーザーがURIでリクエストを送る
  2. my_django/urls.pyのurlpatternsを参照してどこに飛ばすか決める。

aopの中身について

migrations.py

データベースの設定に関連したフォルダ。
あまり触る必要はなし。

admin.py

管理画面に関する設定ファイル。

app.py

djangoのアプリケーション自体の設定ができるファイル

models.py

データベース操作のためのファイル。SQLを使わずクラスを使ってデータベースを管理できるようになるファイル

test.py

テストをするためのファイル。今は使わない。

views.py

実際の処理を書くファイル

app作成後手順

  1. setting.pyファイルのINSTALLED_APPSのリストに
    アプリ名.app.アプリ名(最初大文字)configという文字列を追加
  2. urls.pyにimport includeを追加、path関数

djangoの処理の流れ

  1. リクエストオブジェクトが作成される
  2. url.pyを参照してパスに一致した処理を探す
  3. その処理をrezuestオブジェクトを引数にして関数を呼び出す
  4. 呼び出した関数で処理されたあとはhttpresponseオブジェクトを受け取る
  5. 最後にhttpresponseオブジェクトをブラウザに返して描画されてユーザーに見れる
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?