LLフレームワークBOOKSシリーズDjango×Python

[表紙]Django×Python

紙版発売

A5判/288ページ

定価2,178円(本体1,980円+税10%)

ISBN 978-4-7741-3760-5

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

本書はGoogle社のクラウド環境「Google App Engine」でも利用されたPython製WebアプリケーションフレームワークのデファクトスタンダードとなったDjangoの入門書です。Pythonを使ってWebアプリケーションの開発を行いたい人はもちろん,他の言語や他のWebアプリケーションフレームワークで開発を行っている人がDjangoを知るための手助けとなる書籍です。

こんな方におすすめ

  • Pythonを使ってWebアプリケーションの開発を行いたい人
  • 他言語/他フレームワークからDjangoを使ってみたい人

目次

Chap1 Djangoってなに?

1-1 Djangoを知る

  • なぜフレームワークを用いるのでしょうか?

1-2 Webアプリケーションフレームワークの歴史

  • Djangoの歴史
  • Djangoの名前の由来
  • Djangoの特徴

1-3 Djangoの利点

  • MTVフレームワーク(CGIとの比較)

1-4 Djangoの構成

  • URL Dispatcher
  • View
  • O/Rマッパー
  • Template
  • Admin(auth)
  • 先進的エラースクリーン

Chap2 Djangoを使いこなすための基礎知識

2-1 Pythonを学ぶ

2-2 Pythonの特徴

  • インタラクティブシェル
  • 豊富な標準ライブラリ
  • 動的型付け
  • ガーベジコレクタ
  • メンテナンスしやすい構文

2-3 ビルトインオブジェクト

  • None
  • 真偽値
  • 数値
  • 文字列
  • コンテナオブジェクト
  • リストとタプル
  • 辞書

2-3 制御文

  • インデントによるブロック表現
  • 論理式
  • if .. elif .. else
  • for .. in
  • while
  • try .. except
  • リスト内包表記

2-4 関数

  • 関数定義
  • ドキュメント文字列
  • スコープ
  • ネスト関数とlambda

2-5 クラス定義

  • classic classとnew style class
  • クラスの定義
  • 継承
  • モジュールとパッケージ
  • コラム もっとPython自体を学ぶには

Chap3 Djangoを使ってみる

3-1 Pythonのインストールと設定

  • コラム Python3.0
  • Windowsにインストールする
  • Mac OSXにインストールする
  • Linuxにインストールする

3-2 利用するDatabaseについて

  • コラム Djangoで利用できるデータベース

3-3 Djangoを使ってみる

  • プロジェクトの作成
  • コラム エディタ
  • コラム 設定ファイルがPythonスクリプトであることの利点

Chap4 Djangoをきちんと使う

4-1 今回作成するブログに関して

  • RequestからResponseまでの流れ

4-2 アプリケーションをプロジェクトから切り離す

  • Windowsの場合
  • OS X/linuxなどunix系の場合
  • URL Dispatcher

4-3 モデルを再検討する

  • models.ForeignKey(関連)
  • models.ManyToMany
  • フィールドの振る舞い設定
  • モデルのメソッド

4-4 ログインユーザの情報を利用してNoteを登録する

  • POSTを使ってデータの操作を行うことを推奨するわけ
  • コラム CSRF対策

4-5 テンプレートの分離

  • テンプレートの検索順
  • テンプレートを構成する
  • テンプレートを記述する
  • 変数の出力
  • コラム Djangoのデータアプローチ
  • フィルター
  • タグ

4-6 静的ファイルの配信

  • 開発中にのみ配信をするには

4-7 パブリックタイムラインを表示する

Chap5 Djangoを使いこなす

5-1 ユーザ登録を行う

  • django.contrib.authの主な機能
  • メールアドレスの存在確認を行う方式のユーザ登録を実装する
  • コラム djangoのユーザを作るView関数
  • 入力値の検証
  • マネージャとカスタムマネージャ
  • コラム カスタムマネージャの便利な機能
  • メール送信
  • コラム django.contrib.sitesとは
  • コラム テスト環境用メールサーバとdjango-admin.pyの拡張
  • ログイン前のユーザへメッセージを通知する

5-2 既存のモデルに属性を追加する

  • コラム USER_PROFILE

5-3 トランザクションを制御する

  • コラム 404エラー

5-4 友達を登録する

5-5 友達のつぶやきを含むタイムラインを表示する

5-6 Signal

5-7 自分情報編集

  • 画像ライブラリPILのインストール
  • ファイルのアップロード
  • コラム さまざまなアップロードファイルへの対応

5-8 Djangoオブジェクトのシリアライズ

  • jQuery

5-9 テスト

  • doctest
  • UnitTest
  • testrunner
  • TestClient
  • コラム バックアップとリストア
  • 地理情報を扱う

5-10 PostGISのインストールと設定

  • Windowsの場合
  • ソースコードからインストールする場合

5-11 Djangoの設定を変更する

5-12 イベントアプリケーションの作成

  • イベントモデルの定義
  • ユーザモデルに位置情報を持たせる
  • Google MapのAPIキーを取得する
  • ユーザ登録時にデフォルトの位置情報を登録する
  • ユーザのホームに地図を表示する
  • ユーザの位置情報を更新する
  • 距離を使ったイベント情報の検索
  • コラム eventとmicroblogを連携させるには
  • コラム Djangoに関するリソース

Appendix Djangoチートシート

  • A-1 settings.py
  • A-2 django-admin.py
  • A-3 URLconf(urls.py)
  • A-4 モデルの書き方
  • A-5 モデルマネージャとQueryset
  • A-6 トランザクション
  • A-7 ビュー関数の書き方
  • A-8 Requestオブジェクト
  • A-9 Responseオブジェクト
  • A-10 404/500ページのテンプレートを用意する
  • A-11 Sessionの利用
  • A-12 汎用ビュー
  • A-13 django/views/generic/create_update.py
  • A-14 django/views/generic/date_based.py
  • A-15 django/views/generic/list_detail.py
  • A-16 django/views/generic/simple.py
  • A-17 Paginator
  • A-18 ビルトインタグ
  • A-19 ビルトインフィルタ
  • A-20 Formの使い方
  • A-21 ModelFormの使い方
  • A-22 signalsの使い方
  • A-23 メール送信
  • A-24 UserとAnonymousUser
  • A-25 キャッシュシステム
  • A-26 国際化
  • A-27 本番運用の設定
  • A-28 自動管理インターフェースの設定