ホームページ >バックエンド開発 >Python チュートリアル >Django の基礎を理解する
前のブログでは、開発環境をセットアップし、基本的な Django プロジェクトとアプリを作成しました。ここで、プロジェクト構造、Model-View-Template (MVT) アーキテクチャ、Django 管理インターフェイスなど、Django の基本的な側面をさらに深く掘り下げてみましょう。この投稿を終えるまでに、これらの概念をしっかりと理解し、簡単なブログ アプリケーションを作成する準備ができているはずです。
このブログでは、プロジェクト構造、MVT アーキテクチャ、Django 管理インターフェイスなど、Django の基本的な側面を詳しく掘り下げます。
Django のプロジェクト構造を理解することは、コードを効果的に操作して整理するために重要です。新しい Django プロジェクトとアプリを作成すると、次のディレクトリ構造が生成されます:
myproject/ manage.py myproject/ __init__.py settings.py urls.py wsgi.py asgi.py blog/ __init__.py admin.py apps.py models.py tests.py views.py migrations/
Django は、MVC パターンのバリエーションであるモデル-ビュー-テンプレート (MVT) アーキテクチャに従っています。このアーキテクチャは、懸念事項の明確な分離を促進し、コードをより組織化して保守しやすくします。
モデルはデータベース テーブルの構造を定義します。各モデルは、django.db.models.Model をサブクラス化する Python クラスです。
# blog/models.py from django.db import models class Post(models.Model): title = models.CharField(max_length=100) content = models.TextField() published_date = models.DateTimeField(auto_now_add=True) def __str__(self): return self.title
ビューは、アプリケーションのロジックとデータ処理を処理します。これらはリクエストを受け取り、モデルと対話し、レスポンスを返します。
# blog/views.py from django.shortcuts import render from .models import Post def home(request): posts = Post.objects.all() return render(request, 'blog/home.html', {'posts': posts})
テンプレートは、Web ページの HTML 構造とプレゼンテーションを定義します。 Django テンプレート タグとフィルターを使用して、動的コンテンツを含めることができます。
<!-- blog/templates/blog/home.html --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Blog Home</title> </head> <body> <h1>Blog Posts</h1> {% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.content }}</p> <p>Published on: {{ post.published_date }}</p> {% endfor %} </body> </html>
URL をビューにマップするには、URL パターンを urls.py で構成する必要があります。
# myproject/urls.py from django.contrib import admin from django.urls import path from blog import views urlpatterns = [ path('admin/', admin.site.urls), path('', views.home, name='home'), ]
Django 管理インターフェイスは、追加のコードを記述せずにアプリケーションのデータを管理できる強力なツールです。モデルに合わせてユーザーフレンドリーなインターフェイスを自動的に生成します。
# blog/admin.py from django.contrib import admin from .models import Post admin.site.register(Post)
python manage.py createsuperuser
これは、Django でアプリケーションを作成するプロセスの概要です。シリーズの次のパートにご期待ください。ここでは、学んだことを応用して簡単なブログ アプリケーションを作成します。
以上がDjango の基礎を理解するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。