Django は、Web 開発用の MTV (Model-Template-View) パターンに従います。各コンポーネントの内訳は次のとおりです:
モデル: データ構造を定義し、データベースとの対話を処理することで、SQL クエリを手動で記述せずにデータを保存および取得できるようにします。
テンプレート: HTML のレンダリングとユーザーへのデータの表示を担当します。動的コンテンツを表示するには、Django テンプレート言語 (DTL) と混合した HTML を作成します。
View: ビジネス ロジック層として機能します。モデルとテンプレートを接続し、ユーザーのリクエストを処理し、モデルと対話して、応答 (多くの場合、テンプレートからレンダリングされた HTML) を返します。
Django のリクエストとレスポンスのサイクルの仕組み:
ステップ 1: Django で新しいアプリを作成する.
(前の記事で説明したように) Django をセットアップしたら、プロジェクトに新しいアプリを作成しましょう。
次のコマンドを実行します:
cd mysite python3 manage.py startapp core
これにより、mysite プロジェクト内に core という名前のアプリが作成されます。ファイル構造は次のようになります:
. ├── core │ ├── admin.py │ ├── apps.py │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py ├── db.sqlite3 ├── manage.py └── mysite ├── asgi.py ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
ステップ 2: アプリを設定ファイルに登録します.
Django に新しいアプリを認識させるには、mysite/settings.py:
の INSTALLED_APPS にそのアプリを追加する必要があります。
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'core', # add this line ]
ステップ 3: 基本ビューを作成する.
「Hello, World!」を返す単純なビューを作成してみましょう。メッセージ。
コアアプリ内でviews.pyを開き、次のコードを追加します:
from django.http import HttpResponse def learn(request): return HttpResponse("Hello, World!")
ステップ 4: URL をビューにマップする.
URL 経由でこのビューにアクセスするには、core/urls.py ファイルでマップする必要があります。このファイルが存在しない場合は作成し、次の内容を追加します:
from django.urls import path from . import views urlpatterns = [ path('learn/', views.learn, name='learn'), ]
次に、メインの mysite/urls.py ファイルにコア アプリの URL を含めます:
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('core/', include('core.urls')), # include the core app URLs ]
ここで、サーバーを実行して http://127.0.0.1:8000/core/learn/ にアクセスすると、「Hello, World!」が表示されるはずです。
が表示されます。
ステップ 5: テンプレートを作成してレンダリングする
from django.shortcuts import render def learn(request): context = {'name': 'Django'} return render(request, 'hello.html', context)
このビューは変数 (名前) を hello.html というテンプレートに渡すようになりました。
ステップ 6: テンプレート ディレクトリと HTML ファイルを作成する.
コア アプリで、テンプレート フォルダーと hello.html ファイルを作成します:
mkdir core/templates touch core/templates/hello.html
hello.html 内に次の HTML コードを追加します
Hello Template Hello, {{ name }}!
再度学習 URL にアクセスすると、「Hello, Django!」と表示されるはずです。ブラウザで。
ステップ 7: 基本モデルを作成する.
ブログ投稿を保存するための単純な Post モデルを作成しましょう。
core/models.py に次のコードを追加します:
from django.db import models class Post(models.Model): title = models.CharField(max_length=100) content = models.TextField() def __str__(self): return self.title
このポストモデルには、タイトルとコンテンツという 2 つのフィールドがあります。 __str__ メソッドは、Django 管理またはシェル
で Post オブジェクトがタイトルとともに表示されるようにします。ステップ 8: モデルをデータベースに適用する.
データベースに対応するテーブルを作成するには、次のコマンドを実行します:
python3 manage.py makemigrations python3 manage.py migrate
Django は Post モデルのデータベース テーブルを作成します。
これらの手順に従うことで、モデル、ビュー、テンプレートを備えた基本的な Django アプリが正常に作成されました。ユーザー入力の処理、デザインの改善、アプリのインタラクティブ化などの機能を追加することで、この基盤を拡張できるようになりました。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3