Django を使用した Web アプリケーションの構築、実践ガイド?️ ???
カプセル 2: アプリ、ビュー、テンプレートの作成とルートの構成
同志の皆さん、Django チュートリアル シリーズへようこそ!あと 1 週間です。今週の KodeCapsule を獲得する必要があります。前回の記事では、Django フレームワークの基礎、アーキテクチャ、モデル、ビュー、テンプレート、および Django で新しいプロジェクトを開始する方法について説明しました。前回の記事をまだ読んでいない場合は、続行する前に、ここに戻ってその記事を読むことをお勧めします。それでは、コーヒーのキャップを手に取り、飛び込んでみましょう。
はじめに
Django のアプリとは何ですか?
Django でのアプリの作成
アプリのビューの作成
アプリの URL を作成しています
アプリにテンプレートを追加する
結論
参考文献
このチュートリアルでは、Django プロジェクトのコア コンポーネントの構築と操作について詳しく説明します。 Django でアプリを作成し、設定を構成し、リクエストを処理するビューを作成し、URL ルートを設定する方法を見ていきます。このチュートリアルが終わるまでに、あなたは理解できるはずです
Django で新しいアプリを作成する方法
このアプリをプロジェクトの設定に含める方法
アプリの URL パターンを定義する方法
リクエストとレスポンスを表示するビューの書き方
アプリにテンプレートを追加する方法
始めましょう!!!!!!!
django のアプリは、特定の機能を実行するモジュールです。アプリは、連絡先フォームなどのプロジェクト内の機能と同じくらい単純なものにすることも、ブログや支払いシステムなどの本格的なコンポーネントにすることもできます。アプリは、さまざまなプロジェクト間で再利用できるように設計されています。コードをアプリに整理すると、コードの再利用性、保守性、拡張性が可能になります。アプリとプロジェクトの違いは、アプリはプロジェクト内で特定の機能を実行し、複数のプロジェクトで使用できるのに対し、プロジェクトは構成のコレクション、つまり特定の Web サイト用のアプリで構成されることです。アプリの主な特徴は次のとおりです:
モジュール性: Django アプリは本質的にモジュール式です。つまり、アプリを独立して開発およびテストし、再利用できます。これにより、プロジェクトがより整理され、管理しやすくなります。
再利用性: アプリは自己完結型であるため、他の Django プロジェクトで簡単に再利用できます。たとえば、あるプロジェクト用にブログ アプリを作成し、その同じアプリを変更せずに別のプロジェクトで使用できます。
関心事の分離: 各アプリはプロジェクトの特定の側面を処理します。この分離により、アプリケーションのさまざまな部分の管理が容易になります。
カプセル化: アプリは、モデル、ビュー、テンプレート、静的ファイル、および特定の機能に関連するその他のコンポーネントをカプセル化し、それらを独自のディレクトリ内に整理した状態に保ちます。
前の記事では、すでにプロジェクトをセットアップしました。最初のアプリを作成します。このアプリはブログアプリになります。
1.アプリを作成するには、プロジェクト フォルダーとターミナルに移動し、次のコマンドを実行します。仮想環境がアクティブ化されていることを確認してください。
python manage.py startapp ブログ
このコマンドは、必要なセットアップ ファイルをすべて含む新しいディレクトリを以下のフォルダー構造に作成します。
§──ブログ/
│ §── 移行/
│ │ └──init.py
│ §── init.py
│ §── admin.py
│ §── apps.py
│ §── models.py
│ §──tests.py
│ └── views.py
私。 Migrations/: このフォルダーには、アプリのすべてのデータベース移行が保存されます
II. init.py: これは、そのディレクトリを Python パッケージとして扱うように Python に通知する空のファイルです。
III. admin.py: Django 管理インターフェイスの設定ファイル。 admin.py ファイルの機能は、Django 管理パネルにアプリ モデルを登録することです。 Django 管理者については後ほど説明します
IV. apps.py: これにはアプリの構成が含まれており、アプリのメタデータも含めることができます。
V. models.py: このスクリプトは、アプリのデータ モデルを調整する場所です。
VI. testing.py: test.py スクリプトは、アプリのテスト ケースを作成する場所です
VII. views.py: このスクリプトには、アプリ用に定義したビューが含まれています。ビューはアプリケーションのビジネス ロジックを処理します。
2.プロジェクト設定のインストール済みアプリのリストにブログ アプリを追加します。
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', #my apps 'blog', ]
ビューはアプリケーションで重要な役割を果たします。アプリケーションのビジネス ロジックはビューで定義されます。ビューは、プレゼンテーション層とデータ層の間の接着剤として機能します。 Django には、関数ベースのビューとクラスベースのビューという 2 つの主なタイプのビューがあります (これについては今後の記事で詳しく説明します)。このチュートリアルでは、関数ベースのビューを使用することにこだわります。
1.ブログ アプリで views.py ファイルを開きます
2.http パッケージから HttpResponse をインポートします
django.http import HttpResponse から
3.home という名前の関数を定義します (関数には任意の名前を付けることができます)。この関数は HttpResponse
を返します。
from django.http import HttpResponse def home(request): return HttpResponse("<h1>Welcome to the Home Page</h1>")
ユーザーが Web アプリのさまざまなセクションにアクセスするには、アプリの機能ごとにアクセス ポイントを定義する必要があります。 Django では、アプリの URL を作成することでこれを行います。 URL パターンは特定のビューにマッピングされます。
Django では、プロジェクトのすべての URL をプロジェクト urls.py スクリプトで定義できますが、プロジェクト内の個々のアプリに対して個別の urls.py スクリプトを作成することをお勧めします。
1.ブログアプリディレクトリに urls.py スクリプトを作成します。
2.django の urls パッケージから path 関数をインポートします。 path 関数は、route、view、kwargs、name の 3 つの引数を受け取り、要素を返します。この機能の詳細については、こちらをご覧ください。
django.urls インポート パスから
3.アプリのビューをインポートします
から。ビューをインポート
4.urlpatterns というリストを作成し、ホームページの URL を定義します。このリストはプロジェクト urlpatterns のリストに似ています。
urlpatterns = [ path('', views.home, name='home_page' ]
5.プロジェクトの URL を更新します。アプリにアクセスできるようにするには、メイン プロジェクトの urls.py を更新する必要があります。プロジェクトの urls.py ファイルを開き、urls パッケージから include 関数をインポートし、urlpattern リストを更新します。
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('blog.urls')), ]
6.その後、すべてのファイルを保存し、通常のコマンドを使用して開発サーバーを起動します
python manage.py runserver
ブラウザで URL を開くと、デフォルトの django ホームページが home 関数からの応答を変更します。
前のセクションでは、ホーム ビューからのリポーズは HTML ヘッダー タグを含む http 応答を返しました。大量の HTML タグを含むページ全体を返したい場合はどうすればよいでしょうか?ここで、django のテンプレートが登場します。Django テンプレートを使用すると、ユーザーのブラウザーに表示される HTML 構造を定義できます。テンプレートを使用すると、Django テンプレート言語 (DTL) を使用して動的コンテンツを生成できます。 Django では、アプリまたはアプリケーションのルートにテンプレートを配置します (Django テンプレートの詳細については、今後の記事で説明します)。
1.テンプレート ディレクトリを作成する: ブログ アプリにテンプレート ディレクトリを作成します。テンプレート ディレクトリに blog という名前の別のディレクトリを作成します。
2.テンプレートを作成します。
という名前の HTML ファイルを作成します
myproject/ blog/ templates/ blog/ index.html
3.次のコードを使用して、index.html ファイルを更新します。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Blog App</title> </head> <body> <h1>Welcome to the Home page</h1> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Voluptas maiores, modi facilis veritatis amet eum labore odio sit nemo eius?</p> </body> </html>
4. ホーム ビューを更新します。ビュー ファイルを開き、ショートカットからレンダリングをインポートします。 render 関数を使用して関数本体を更新し、index.html を返します。
from django.shortcuts import render def home(request): return render(request, 'blog/index.html')
変更を保存し、ブラウザを再読み込みします。
今週のKodecapsuleも終わりました。この記事では、Django での最初のアプリの作成、ビューの作成、URL の構成、Django でのテンプレートのレンダリングについて説明しました。次の記事では、モデルとテンプレートについて詳しく見ていきます。
私があなたをゼロから Django の専門家へと導くこのシリーズの記事に必ず注目してください。
ご提案やコメントはいつでも大歓迎です。
クセー・ウェウォリアモ
https://docs.djangoproject.com/en/5.0/topics/http/views/
https://docs.djangoproject.com/en/5.0/topics/templates/
https://docs.djangoproject.com/en/5.0/ref/urls/#include
https://docs.djangoproject.com/en/5.0/ref/urls/#path
https://www.w3schools.com/django/django_create_app.php
以上がDjango Web Framework の初心者ガイド: アプリ、ビューの作成、URL とテンプレートの構成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。