Agile育成ブログ
未来を変える喜びを
Django

Django


Warning: count(): Parameter must be an array or an object that implements Countable in /home/xs638785/agile-software.site/public_html/wp-content/plugins/rich-table-of-content/functions.php on line 490

Djangoを使ってウェブサイトを作成することで効率的に作ることができます。
Djangoはフレームワークといいユーザー認証や管理者用の画面など開発に欠かせない機能を数多く含んでいます。

作成するシステム全体の設定をつかさどる部分としてプロジェクトが存在し、その下にそれぞれの機能に応じたアプリがある

Djangoで作成されたサイト
  • Youtube

DNS(Domain Name System)に依頼しIPアドレスに交換するようにする

多くのサーバーを介してみたいサイトの情報を取ってくる

この記事では上から順番にコードを実行していくことでDjangoの開発環境が設定できるようになっています。
なので詳しい説明は省いているため各見出しをクリックすることで詳しい説明を見ることができます。

mysiteのsetting.pyにおいてja

画像をアップデートする

Djangoのインストール

https://www.agile-software.site/2021/07/11/django%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/

Djangoの仕組み

MVC

Djangoは「MVCアーキテクチャ」と呼ばれる考え方に基づいて設計されています。

Modelデータアクセス関係の処理を担当します。
View画面表示関係を担当します。
Controllerこれは全体の制御を担当します。

アプリケーションがMVCにあたります。
アプリケーションをいくつも組み合わせて作っていくことになります。

Djangoはrequestオブジェクトを生成し、responseオブジェクトを返す。
オブジェクトとはrequestされた内容をブラウザに表示させるための多くのデータがまとめられたもの
大きな流れを見ていきましょう。

シンプル

詳細

  1. ブラウザから「IPアドレス/index」がrequestされる。
  2. プロジェクトのurls.pyのurlpatternsで書かれていたpath(index/クラス)のindexが一致した場合アプリのurls.pyファイルを呼び出す。
  3. views.pyではクラスが定義されており、requestオブジェクトを受け取り、responseオブジェクトを返します。
  1. URLディスパッチャからView関数が呼び出される
  2. View内でリクエストオブジェクトから入力データを取得して型変換
  3. 入力データのバリデーション(妥当性チェック)をおこなう
  4. バリデーションOKの場合は、ビジネスロジック処理を続行し、画面に表示するための変数を用意
  5. 遷移先画面を決定
  6. 遷移先画面に変数の内容をレンダリング
Djangoの全体像

urls.pyファイル

https://www.agile-software.site/2021/08/27/urls-py/

wsgi.pyファイル

https://www.agile-software.site/2022/04/23/wsgi-py%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/

asgi.pyファイル

https://www.agile-software.site/2022/04/23/asgi-py%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/

views.py

settings.pyファイル

プロジェクトの設定情報を記述したファイル。

https://www.agile-software.site/2021/04/24/django-mysite-setting-py/

init_.pyファイル

https://www.agile-software.site/2022/04/23/init_-py%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/

manage.pyファイル

https://www.agile-software.site/2022/04/23/manage-py%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/

Template

テンプレートタグ

テンプレートタグはテンプレートの機能を拡張するために使います。
{% <タグ名> ‘<引数>’ %}

  • url(URLの逆引き)
  • static:静的ファイルのURLを取得
  • if(条件分岐)
{% url 'profile' %}
{% static 'css/style.css' %}

Form

データベースのマイグレーション

https://www.agile-software.site/2021/04/17/%e3%83%9e%e3%82%a4%e3%82%b0%e3%83%ac%e3%83%bc%e3%82%b7%e3%83%a7%e3%83%b3/

開発環境

https://www.agile-software.site/2021/04/24/django-%e4%bb%ae%e6%83%b3%e7%92%b0%e5%a2%83%e6%a7%8b%e7%af%89/

プロジェクト作成

https://www.agile-software.site/2021/04/29/django%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%bc/ https://www.agile-software.site/2021/04/25/%e3%83%9d%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%aa%e3%82%aa%e3%82%b5%e3%82%a4%e3%83%88%e6%a7%8b%e7%af%89/ https://www.agile-software.site/2021/04/29/%e6%9b%b8%e7%b1%8d%e6%a4%9c%e7%b4%a2%e3%82%b7%e3%82%b9%e3%83%86%e3%83%a0/ https://www.agile-software.site/2021/04/30/%e4%ba%88%e7%b4%84%e3%82%b5%e3%82%a4%e3%83%88%e3%82%b7%e3%82%b9%e3%83%86%e3%83%a0/ https://www.agile-software.site/2021/04/29/%e3%83%ac%e3%82%b9%e3%83%88%e3%83%a9%e3%83%b3%e6%a4%9c%e7%b4%a2%e3%82%b7%e3%82%b9%e3%83%86%e3%83%a0/

You cannot copy content of this page