速習 Django 3
| 著者 | 山田祥寛 |
|---|---|
| 出版社 | WINGSプロジェクト |
| 価格 | 700円(税込) |
| 判型 | Kindle版・4色 |
| ページ数 | 256ページ |
| 発売日 | 2020年6月8日 |
| シリーズ | 速習(QUICK MASTER - WINGS) |
| 対象レベル | 初級 |
素早く学べる。Django 3の解説書
本書は、PythonフレームワークであるDjangoについて短時間で概要を掴みたい方のための書籍です。7つのPartに分けて、Djangoの基本からテンプレート開発、データベース連携、リクエスト/レスポンス処理、フォーム開発までを、サンプルコードと共に詳しく解説しています。最新バージョン3対応です。更新履歴
- 正誤訂正:2021年4月19日 更新
目次
- はじめに
- 対象読者
- サンプルプログラム
- Part 1:イントロダクション
- 1.1 Djangoの位置づけ
- 1.1.1 フレームワークとは?
- 1.1.2 Pythonのフレームワーク
- 1.1.3 Djangoの特徴
- 1.2 Django開発の準備
- 1.2.1 アプリ実行/開発環境の準備
- 1.2.2 プロジェクト/アプリの作成
- 1.2.3 補足:Apache環境で実行する
- Part 2:Djangoの基本
- 2.1 ビューの基本
- 2.2 テンプレートの基本
- 2.3 モデルの基本
- 2.3.1 O/Rマッパーとは?
- 2.3.2 データベース利用の準備
- 2.3.3 モデルクラスの作成
- 2.3.4 マイグレーションの作成/実行
- 2.3.5 テストデータの投入
- 2.3.6 データアクセスの基本
- Part 3:テンプレート開発
- 3.1 条件分岐
- 3.1.1 式の真偽に応じて出力を切り替える - if
- 3.1.2 条件式で利用できる演算子
- 3.1.3 真偽値に応じた文字列を出力する - yesno
- 3.1.4 最初にTrueとなった値を返す - firstof
- 3.1.5 補足:条件式ではフィルターも利用可能
- 3.2 繰り返し処理
- 3.2.1 ループ変数を参照する
- 3.2.2 リストが空の場合の出力を決める - for…emptyタグ
- 3.2.3 指定された回数だけ繰り返す - for+withタグ
- 3.2.4 ループ内で変数が変化しているかを検出する - ifchanged
- 3.2.5 リストを任意のキーでグループ化する - regroup
- 3.2.6 値セットの内容を順に出力する - cycle
- 3.3 HTMLエスケープ
- 3.3.1 エスケープの無効化 - safeフィルター
- 3.3.2 エスケープをまとめて無効化 - autoescapeタグ
- 3.3.3 補足:明示的にエスケープする
- 3.3.4 文字列からHTMLタグを除去する
- 3.3.5 テンプレートの予約文字をエスケープする
- 3.3.6 補足:その他のエスケープ関連フィルター
- 3.4 テンプレートの継承
- 3.4.1 親テンプレートの定義
- 3.4.2 子テンプレートの準備
- 3.4.3 テンプレートの部品化 - includeタグ
- 3.5 リソースへのアクセス
- 3.5.1 静的ファイルの基本
- 3.5.2 本番環境でのリソース参照
- 3.6 その他の機能
- 3.6.1 文字列の操作
- 3.6.2 リストへのアクセス - slice
- 3.6.3 日付の整形 - date/time
- 3.6.4 コメント構文
- Part 4:モデル開発
- 4.1 フィクスチャ
- 4.1.1 データの準備
- 4.1.2 フィクスチャの実行
- 4.1.3 フィクスチャの自動生成
- 4.2 データの取得
- 4.2.1 指定の条件式でデータを取得する - filterメソッド
- 4.2.2 条件式に合致したデータを除去する - excludeメソッド
- 4.2.3 単一のオブジェクトを取得する - getメソッド
- 4.3 フィールドルックアップ
- 4.3.1 フィールドルックアップの基本
- 4.3.2 大小比較
- 4.3.3 部分一致
- 4.3.4 正規表現比較
- 4.3.5 NULL比較
- 4.3.6 範囲比較
- 4.3.7 候補比較
- 4.3.8 日付比較(年/月/日)
- 4.4 OR条件式の生成
- 4.4.1 Qオブジェクトの基本
- 4.4.2 より複雑な条件式
- 4.5 SELECT命令のその他の句
- 4.5.1 データの並び替え
- 4.5.2 取得範囲の指定
- 4.5.3 取得列の制約
- 4.5.4 データのグループ化
- 4.5.5 複数の結果セットを結合する
- 4.5.6 補足:生のSQL命令を発行する
- 4.6 リレーション
- 4.6.1 リレーションの基本(1:n関係)
- 4.6.2 m:n関係の定義
- Part 5:ビュー開発
- 5.1 ルーティング
- 5.1.1 ルートパラメーター
- 5.1.2 任意のルートパラメーター
- 5.1.3 ルートパラメーターの制約
- 5.1.4 可変長パラメーター
- 5.2 リクエスト/レスポンス
- 5.2.1 リクエスト情報の取得
- 5.2.2 リクエストヘッダーを取得する
- 5.2.3 ページをリダイレクトする
- 5.2.4 404 Not Foundエラーの送出
- 5.2.5 レスポンスヘッダーを生成する
- 5.2.6 JSON形式の出力を生成する
- 5.2.7 ファイルをクライアントにダウンロードさせる
- 5.3 状態管理
- 5.3.1 クッキー
- 5.3.2 セッション
- 5.4 その他の話題
- 5.4.1 クラスベースのビュー
- 5.4.2 ミドルウェア
- Part 6:フォーム開発(基本編)
- 6.1 フォームの基本
- 6.1.1 フォームの作成
- 6.1.2 主なXxxxxFieldクラス
- 6.1.3 入力フォームの作成
- 6.1.4 フォームからの入力を処理
- 6.1.5 サンプルの動作確認
- 6.2 検証機能の実装
- 6.2.1 HTML検証機能の無効化
- 6.2.2 入力フォームのカスタマイズ
- 6.2.3 エラーメッセージのカスタマイズ
- 6.3 検証ルールの自作
- 6.3.1 フォーム固有の検証ルール
- 6.3.2 複数のフォームで再利用する検証ルール
- 6.3.3 項目を跨った検証ルール
- 6.4 XxxxxFieldクラスの注意点
- 6.4.1 ラジオボタンのリスト
- 6.4.2 リストボックス(複数選択)
- 6.4.3 チェックボックス
- 6.4.4 ファイル入力ボックス
- Part 7:フォーム開発(モデル連携)
- 7.1 データの登録
- 7.1.1 モデルに紐づいたフォーム
- 7.1.2 検証ルールの定義(モデル)
- 7.1.3 ModelFormによるビュー/テンプレートの定義
- 7.2 既存データの更新
- 7.3 既存データの削除
- 書籍情報
- 著者プロフィール
- 基本情報
- サポートサイト
- 表紙の写真について
正誤表
| 該当頁 | 該当箇所 | 修正刷 |
|---|---|---|
| 訂正箇所 | 訂正事項 | 更新日 |
| p.- | 7.3節 [リスト]crud_show.html 4行目 | - |
| <form action="{% url \\'crud_update\\' id %}" ...> | <form action="{% url \\'crud_delete\\' id %}" ...> | 2021/04/19 |
FAQ
現在、FAQはありません。
ダウンロード
お問い合わせ
書籍に関するご質問や誤りのご報告、ご意見・ご感想などをお寄せください。
お問い合わせの前にFAQ・正誤表をご確認ください。すでに掲載済みの内容については個別回答が難しい場合があります。