Django Tutorial 1 メモ

やってくこと

Django チュートリアル(日本語版)
目的は全体像としてどんな思想で使うのかを把握する為。
お作法とかベストプラクティス・バッドプラクティスが分かるといいな。

作業環境

ホスト OS:Windows10Home
WSL1 使用(Ubuntu18.0.4)
エディタは VSCode1.44.2 で WSL に Remote 接続して、Windows ホストから WSL のファイルを直接編集する。(拡張:Remote – WSL)

Python3.8
Django3.0.5

諸注意

コマンドで python とか python3 が混在しているかもしれない。
基本、Ubuntu のデフォルト Python は 2.7 で、Python3 は 3.6

この章でやること

  • Django インストール
  • プロジェクト雛形作成
  • ハロワ
  • アプリ雛形作成
  • ルーティング設定

インストール

pip3 install django==3.0.5

実行手順

  • プロジェクト雛形作成
    mysite は適宜変えても OK 。
    チュートリアル進めて全容をサクっと見たいならそのままの方が都合がいい。

    django-admin startproject mysite
    

    コードはどこに置くの?
    (モダンなフレームワークを使わない) 古いプレーンな PHP の経験があるなら、これまでは Web サーバのドキュメントルート下 (/var/www といった場所) にコードを配置してきたことでしょう。 Django ではそうしないでください。 Python コードを Web サーバーのドキュメントルート下に置かないでください。コードをドキュメントルート下に置くと、 誰かがコードを Web を介して読めるようになってしまうからです。これは安全上良くありません。
    コードはドキュメントルートの外、例えば /home/mycode のような場所に置きましょう。
    https://docs.djangoproject.com/ja/3.0/intro/tutorial01/

  • 開発サーバー実行
    コード編集したら自動で変更される。
    インストール、雛形、実行の 3 ステップでハロワまでは到達できる。

    # デフォルトは8000ポート
    python manage.py runserver
    
    # 指定もできる
    python manage.py runserver 8080
    

    ここまでで、うまく行けばこうなるはず。
    上手くいかない場合、実行ポートの競合(既に他のアプリで 8000 使ってる)とか、インストールバージョンあたりを確認するとよさそう。

  • アプリ雛形作成
    polls は適宜変えても OK。
    プロジェクト同様、アプリの雛形もチュートリアル進めて全容をサクっと見たいならそのままの方が都合がいい。

    python manage.py startapp polls
    
  • アプリのビュー作成と、プロジェクトへの適応
    • アプリ側
      雛形アプリ(polls)のurls.pyviews.pyを設定する。
      このままだと manage.py で実行されるプロジェクト単位でルーティングされない。
    • プロジェクト側
      雛形プロジェクト(mysite)のurls.pyに、URL パスを追加する。
      これによりプロジェクト実行(runserver)したときの URL が参照できるようになる。

      include() を使うとき
      URL パターンをインクルードするときはいつでも include() を使うべきです。 admin.site.urls はこれについての唯一の例外です。

所感

1 章だけだと流石に全容が見えないので、何とも言えない。
(たぶん全章終えてもそうだと思う)

ディレクトリ構成とか設定箇所がフレームワーク側できっちり決まってるので、少数開発というよりある程度人数がいる開発の時に便利かなーという印象。
なので共通認識で揉めることが Flask とかに比べると少なそう。
ハロワまでは Flask とそんなに大差なし。

次回はこちら

前回はこちら この章でやること DB 設定 モデルから DB 自動生成 管理画面(DjangoAdmin)...

シェアする

  • このエントリーをはてなブックマークに追加

フォローする