1. Django の基礎
-
プロジェクトの構造: Django プロジェクトの基本構造 (settings.py、urls.py、wsgi.py など) を理解します。
-
アプリ: Django アプリがプロジェクト内でどのように動作するか、またそれらを作成および管理する方法を理解します。
-
URL とルーティング: URL パターンを定義し、それらをビューにリンクします。
-
ビュー: 関数ベースのビュー (FBV) とクラスベースのビュー (CBV) を作成します。
-
テンプレート: Django のテンプレート言語を使用して動的 HTML ページを作成します。
2. モデルと ORM (オブジェクト リレーショナル マッピング)
-
モデルの定義: Django でデータベース モデルを作成および管理します。
-
移行: Django の移行がどのように機能してモデルの変更をデータベースに反映するかを理解します。
-
QuerySet API: Django の ORM を使用してデータを取得、フィルタリング、操作します。
3. フォーム
-
Django フォーム: Django の組み込みフォーム処理を使用してフォームを作成および処理します。
-
モデル フォーム: Django モデルに基づいてフォームを自動的に作成します。
-
フォーム検証: カスタム検証ロジックを実装します。
4. 認証と認可
-
ユーザー モデル: Django の組み込みユーザー モデルを使用します。
-
認証: ログイン、ログアウト、およびパスワード管理機能を実装します。
-
認可: ユーザーの権限とグループを管理します。
-
カスタム ユーザー モデル: デフォルトのユーザー モデルを拡張または置き換えます。
5. Django 管理インターフェイス
-
管理者のカスタマイズ: データを管理するために Django 管理パネルをカスタマイズします。
-
管理モデル: モデルを登録し、管理インターフェースでのモデルの表示方法をカスタマイズします。
6. 静的ファイルとメディア ファイル
-
静的ファイル: Django アプリケーションで CSS、JavaScript、および画像を提供します。
-
メディア ファイル: 画像やファイルのアップロードなど、ユーザーがアップロードしたファイルを処理します。
7. ミドルウェア
-
ミドルウェアの理解: ミドルウェアの仕組みとカスタム ミドルウェアの作成方法を学習します。
-
共通ミドルウェア: 認証、セッション、セキュリティなどのタスクに Django の組み込みミドルウェアを使用します。
8. Django REST フレームワーク (DRF)
-
Django を使用した API: Django REST フレームワークを使用して RESTful API を構築します。
-
シリアライザー: Django モデルを JSON に、またはその逆に変換します。
-
ビューセットとルーター: DRF のビューセットとルーターを使用してビューを簡素化します。
-
DRF での認証: API でトークンベースまたはセッションベースの認証を実装します。
9. セキュリティ
-
クロスサイト スクリプティング (XSS): XSS 攻撃からアプリケーションを保護します。
-
クロスサイト リクエスト フォージェリ (CSRF): CSRF 攻撃を理解し、防止します。
-
SQL インジェクション: Django の ORM による SQL インジェクションを防止します。
-
認証のベスト プラクティス: ログインとパスワードの安全な保管を確保します。
10. 展開
-
Django のデプロイ: Django アプリケーションを運用環境にデプロイします (例: Heroku、AWS、DigitalOcean などのプラットフォームを使用)。
-
WSGI と ASGI: Django アプリケーションのデプロイにおける WSGI/ASGI の役割を理解します。
-
本番環境の静的ファイルとメディア ファイル: 本番環境で静的ファイルとメディア ファイルを提供します。
11. テスト
-
単体テスト: Django ビュー、モデル、フォームの単体テストを作成します。
-
統合テスト: Django アプリケーションのさまざまな部分間の相互作用をテストします。
-
テスト カバレッジ: テストがすべての重要なコード パスを確実にカバーします。
12. パフォーマンスの最適化
-
データベースの最適化: Django の ORM を効率的に使用し、クエリを最適化し、データベース インデックスを使用します。
-
キャッシュ: パフォーマンスを向上させるためにキャッシュ戦略を実装します。
-
スケーラビリティ: ロード バランシングやデータベース レプリケーションなど、Django アプリケーションをスケーリングするための戦略。
13. 国際化 (i18n) とローカリゼーション (l10n)
-
アプリケーションの翻訳: アプリケーションを複数の言語で利用できるようにします。
-
タイムゾーンのサポート: Django アプリケーション内のタイムゾーンを管理します。
14. ジャンゴシグナル
-
シグナルの使用: Django シグナルを理解して実装し、アプリケーションのコンポーネントを分離します。
15. 非同期サポート
-
非同期ビュー: Django で非同期ビューを作成します。
-
チャネル: WebSocket のサポートとバックグラウンド タスクの処理に Django チャネルを使用します。
16. ファイルのアップロードと管理
-
ファイル アップロードの処理: Django でのファイル アップロードの管理と、アップロードされたファイルの処理。
-
ストレージ オプション: メディア ファイルに異なるストレージ バックエンド (AWS S3 など) を使用します。
これらのトピックをマスターすると、Django の強固な基盤が確立され、複雑でスケーラブルな Web アプリケーションを構築できるようになります。
以上がDjango を学習する際の重要なトピックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。