Commits

Surgo  committed 1007093

modified css
add chapter1 contents

  • Participants
  • Parent commits ba41982

Comments (0)

Files changed (15)

File djangobook/resources/2.0/_build/doctrees/chapter01.doctree

Binary file modified.

File djangobook/resources/2.0/_build/doctrees/environment.pickle

Binary file modified.

File djangobook/resources/2.0/_build/pickle/_sources/chapter01.txt

 ==========================================
 
 この本はWeb開発を楽しく、また時間を短縮するWeb開発フレームワークである Django について解説しています。
+Django を使うと、質の高いWebアプリケーションを開発したり、メンテナンスするためのストレスから解放されます。
 
-Django を使うと、質の高いWebアプリケーションを開発したり、メンテナンスするためのストレスから解放されます。
+Web開発の長所は、おもしろくて創造的なことです。
+逆に短所は、やっかいな同じ作業の繰り返しでイライラするところです。
+Django を使うことにより、そのイライラする作業を軽減し、 - あなたのWebアプリケーションの
+本来の目的である - おもしろい作業に集中することができます。
+これを実現するためには、一般的な形態のWeb開発パターンを高いレベルで抽象化し、
+頻繁にプログラミングしなければならないタスクをショートカットし、
+問題を解決するための手法を明確化します。
+同時に Django はあなたのやり方に合わせるために、
+必要であればフレームワークのスコープ外でも作業ができます。
+
+この本の目標は、あなたに Django の専門家になってもらうことです。
+この本が焦点としているものが2つあります。
+1点目について、
+私たちは Django は何をするのか、
+どうやってWebアプリケーションを構築するのかを重点的に解説します。
+2点目について、
+私たちは、
+「このツールを自身のプロジェクトでどう有効活用できるか」
+という質問への答えとなる、
+適切なコンセプトを高いレベルでディスカッションします。
+
+あなたはこの本を読むことにより、
+読みやすくメンテナンスしやすいコードで、
+パワフルなWebサイトを短期間で開発するために必要な技術を学べるでしょう。
+
+Webフレームワークとは
+--------------------------
+
+Django は比較的新しい世代のWebフレームワークですが、
+この用語は正確に何を意味しているのでしょうか?
+
+この質問に答えるために、
+フレームワークを使わず、
+Python のみで書かれた
+Webアプリケーションの設計について考えてみましょう。
+わたしたちはこの本を通して、
+この近道があなたにとって非常に役立つということを認識してほしいので、
+あなたが近道をせずに作業した場合の基本的なアプローチを示します。
+(この近道が常に利用できるとは限らないので、
+近道せずに物事を成し遂げることにも価値があります)
+さらに最も重要なこととして、
+Webアプリケーションがどのように動作しているのかを知ることで、
+あなたはより良いWeb開発者になれます。
+
+PythonでWebアプリケーションを作る最も簡単な方法のひとつは、
+1998年代に最もポピュラーだった技術である 
+Common Gateway Interface (CGI) 標準を利用することです。
+それがどのように動くかについての概要: 
+HTMLを出力する Python スクリプトを書き、
+拡張子を ".cgi"としてWebサーバに保存し、
+Webブラウザーからそのページを参照する。
+たったこれだけです。
+
+例として、ここに最近発行された本10冊をデータベースから取得し、
+表示するための Python CGI スクリプトがあります。
+構文の詳細についてはあまり気にせず、
+このスクリプトの基本的な動作を感じ取ってください。
+
+.. sourcecode:: python
+
+    #!/usr/bin/env python
+
+	import MySQLdb
+
+	print "Content-Type: text/html"
+	print # 空白行を出力
+
+	print "<html>"
+	print "<head><title>Books</title></head>"
+	print "<body>"
+
+	connection = MySQLdb.connect(user='me', passwd='letmein', db='my_db')
+	connection.cursor()
+	cursor.execute("SELECT name FROM books ORDER BY pub_date DESC LIMIT 10")
+
+    print "<ul>"
+
+	** for row in cursor.fetchall(): **
+		print “<li>%s</li>” % row[0]	
+
+	print "</ul>"
+
+	print "</body>"
+	print "</html>"
+
+	connection.close()
+
+まず最初に、このコードはCGIとしての用件を満たすために、
+"Content-Type"行を出力し、そのあとで空白行を出力しています。
+HTMLの開始部分の行(<html>タグなど)を出力し、データーベースへ接続し、
+最近発行された10冊分の本の名前を検索するためのクエリーを発行します。
+取得した本で繰り返し処理を行い、
+そのタイトルをHTMLのリストとして生成しています。
+最後に、HTMLの終了部分の行(</html>タグなど)を出力し、
+データーベース接続を閉じます。
+
+この例のように、
+ある目的に特化したページを一から作るというアプローチは、
+必ずしも悪いこととは言えません。
+第一に、このコードは理解するのが非常に簡単です。
+開発初心者の方でも、
+この Python コードを読みむことができ、
+その開始から終了までの処理すべてを理解できます。
+ここからは他に何も学ぶ必要はありませんし、他のコードを読む必要もありません。
+デプロイするのもとても簡単です。
+このファイルの拡張子を".cgi"として保存し、
+Webサーバにアップロードし、
+ブラウザーでそのページを表示するだけです。
+
+こんなに簡単なことですが、
+このアプローチには多くの問題点や厄介事があります。
+自身にこう問いてみてください。
+
+* あなたのWebアプリケーションの複数箇所から
+  データベースへ接続する必要がある時、
+  なにが起こりますか?
+  間違いなく、各 CGI スクリプトごとにデータベースへ接続するための
+  似たようなコードをコピペする必要はありません。
+  それは共通機能としてリファクタするのが現実的です。
+
+* 開発者は本当に"Content-Type"行の出力や、
+  忘れずにデータベースのコネクションを閉じることなどに気を使うべきでしょうか?
+  この種の決まりごとは開発者の生産性を落とし、
+  間違えてしまう危険性を高めます。
+  この開始と終了に関するタスクは、
+  共通のインフラとして取り扱うのが最善です。
+
+* このコードを、データベースやパスワードが異なる
+  複数の環境で再利用する場合に何が起こりますか?
+  ここでは何らかの環境設定ができる構造が必要です。
+
+* Python コーディング未経験のWebデザイナーが、
+  ページのデザインを変更しようとした場合に何が起こりますか?
+  1文字誤っただけで、Webアプリケーション全体をダウンさせる可能性もあります。
+  理想は、
+  ロジック(データベースから本の名前を検索する処理)用のページと
+  HTML表示用のページを分け、
+  デザイナーがロジックに影響せずにHTMLを編集できることです。
+
+この問題を的確に解決するのがWebフレームワークです。
+Webフレームワークは、あなたのアプリケーションに、読みやすく、
+メンテナンス性にすぐれた(一から再開発するようなことがない)
+コーディングに集中できるようなインフラを提供します。
+とても簡単に言うと、それは Django がなせる技です。
+
+MVCデザインパターンとは
+--------------------------
+
+前セクションで紹介したアプローチと
+Webフレームワークのアプローチの違いが簡単にわかる例を見てみましょう。
+ここでは、前セクションのCGIで書かれたコードが、 
+Django を使用するとどのように書けるのかを紹介します。
+私たちはそれを4つのファイルに分割します:
+
+.. sourcecode:: python
+
+    # models.py (データベーステーブル)
+
+    from django.db import models
+
+    class Book(models.Model):
+        name = models.CharField(max_length=50)
+        pub_date = models.DateField()
+
+
+    # views.py (ビジネスロジック)
+
+    from django.shortcuts import render_to_response
+    from models import Book
+
+    def latest_books(request):
+        book_list = Book.objects.order_by('-pub_date')[:10]
+        return render_to_response('latest_books.html', {'book_list': book_list})
+
+
+    # urls.py (URL構成)
+
+    from django.conf.urls.defaults import *
+    import views
+
+    urlpatterns = patterns('',
+        (r'^latest/$', views.latest_books),
+    )
+
+
+    # latest_books.html (テンプレート)
+
+    <html>
+    <head><title>Books</title></head>
+    <body>
+    <h1>Books</h1>
+    <ul>
+    {% for book in book_list %}
+    <li>{{ book.name }}</li>
+    {% endfor %}
+    </ul>
+    </body>
+    </html>
+
+これも構文の詳細についてはあまり気にせず、
+この全体的なデザインを感じ取ってください。
+ここで重要なことは、関心事の分離 (SoC: Separation of Concerns) です。
+
+* `models.py` ファイルには、
+  Python のクラスとして表された、
+  データベースのテーブルに関する記述が含まれています。
+  このクラスは *モデル* と呼ばれています。
+  モデルを利用することにより、
+  あなたはデータベースへのレコードの挿入、取得、更新、削除処理を
+  簡単な Python コードを使用することができるようになり、
+  SQLステートメントを何度も書く必要がなくなります。
+
+* `views.py` ファイルには、
+  ページ単位のビジネスロジックが含まれています。
+  `latest_books()` ファンクションは *ビュー* と呼ばれています。
+
+* `urls.py` ファイルには、どのビューが、
+  どのURLパターンで呼び出されるかを指定します。
+  このケースでは、URL `/latest/` により、
+  `latest_books()` ファンクションを呼び出します。
+  例えば、あなたのドメインが、 `example.com` だった場合は、
+  URL `http://example.com/latest/` により、
+  `latest_books()` ファンクションを呼び出します。
+
+* `latest_book.html` ファイルは、
+  ページのデザインを記述するための HTML テンプレートファイルです。
+  テンプレートには基本的なロジックを記述するためのテンプレート言語が用意されています。
+  例えば、 `{% for book in book_list %}` です。

File djangobook/resources/2.0/_build/pickle/chapter01.fpickle

Binary file modified.

File djangobook/resources/2.0/_build/pickle/environment.pickle

Binary file modified.

File djangobook/resources/2.0/_build/pickle/searchindex.pickle

 sS'terms'
 p4
 (dp5
-V\u4EE5\u524D\u306E\u30A8\u30C7\u30A3\u30B7\u30E7\u30F3
+V\u306F\u4F55\u3092\u3059\u308B\u306E\u304B
 p6
+I3
+sVdatefield
+p7
+I3
+sV\u4EE5\u524D\u306E\u30A8\u30C7\u30A3\u30B7\u30E7\u30F3
+p8
 I0
-sVgive
-p7
-(lp8
+sV\u30D5\u30A1\u30F3\u30AF\u30B7\u30E7\u30F3\u306F
+p9
+I3
+sVexecut
+p10
+I3
+sV\u308F\u305F\u3057\u305F\u3061\u306F\u3053\u306E\u672C\u3092\u901A\u3057\u3066
+p11
+I3
+sV\u4E00\u822C\u7684\u306A\u5F62\u614B\u306Eweb\u958B\u767A\u30D1\u30BF\u30FC\u30F3\u3092\u9AD8\u3044\u30EC\u30D9\u30EB\u3067\u62BD\u8C61\u5316\u3057
+p12
+I3
+sVtext
+p13
+I3
+sV\u3068\u3057\u3066web\u30B5\u30FC\u30D0\u306B\u4FDD\u5B58\u3057
+p14
+I3
+sV\u30E2\u30C7\u30EB
+p15
+I3
 sV\u3053\u306E\u672C\u3092\u7121\u6599\u3067\u7686\u69D8\u306B\u63D0\u4F9B\u3067\u304D\u308B\u3053\u3068\u3092
-p9
+p16
 I0
+sV\u3053\u3093\u306A\u306B\u7C21\u5358\u306A\u3053\u3068\u3067\u3059\u304C
+p17
+I3
+sV\u65E5\u672C\u8A9E
+p18
+I0
+sV\u3053\u306E\u7A2E\u306E\u6C7A\u307E\u308A\u3054\u3068\u306F\u958B\u767A\u8005\u306E\u751F\u7523\u6027\u3092\u843D\u3068\u3057
+p19
+I3
+sV\u307E\u305A\u6700\u521D\u306B
+p20
+I3
+sV\u3053\u306E\u30AF\u30E9\u30B9\u306F
+p21
+I3
+sVrow
+p22
+I3
+sVpython\u3067web\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u4F5C\u308B\u6700\u3082\u7C21\u5358\u306A\u65B9\u6CD5\u306E\u3072\u3068\u3064\u306F
+p23
+I3
+sVweb\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u306E\u30A2\u30D7\u30ED\u30FC\u30C1\u306E\u9055\u3044\u304C\u7C21\u5358\u306B\u308F\u304B\u308B\u4F8B\u3092\u898B\u3066\u307F\u307E\u3057\u3087\u3046
+p24
+I3
+sV\u3042\u306A\u305F\u306F\u3088\u308A\u826F\u3044web\u958B\u767A\u8005\u306B\u306A\u308C\u307E\u3059
+p25
+I3
+sVpreced
+p26
+(lp27
+sV\u3053\u306E\u672C\u304C\u7126\u70B9\u3068\u3057\u3066\u3044\u308B\u3082\u306E\u304C2\u3064\u3042\u308A\u307E\u3059
+p28
+I3
+sV\u30C7\u30FC\u30BF\u30FC\u30D9\u30FC\u30B9\u3078\u63A5\u7D9A\u3057
+p29
+I3
+sV\u3053\u306E\u4F8B\u306E\u3088\u3046\u306B
+p30
+I3
+sVshortcut
+p31
+I3
+sV\u69CB\u6587\u306E\u8A73\u7D30\u306B\u3064\u3044\u3066\u306F\u3042\u307E\u308A\u6C17\u306B\u305B\u305A
+p32
+I3
+sV1\u70B9\u76EE\u306B\u3064\u3044\u3066
+p33
+I3
+sVweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u304C\u3069\u306E\u3088\u3046\u306B\u52D5\u4F5C\u3057\u3066\u3044\u308B\u306E\u304B\u3092\u77E5\u308B\u3053\u3068\u3067
+p34
+I3
+sV\u305D\u306E\u30A4\u30E9\u30A4\u30E9\u3059\u308B\u4F5C\u696D\u3092\u8EFD\u6E1B\u3057
+p35
+I3
+sV\u9593\u9055\u3044\u306A\u304F
+p36
+I3
+sV\u3068\u3057\u3066\u4FDD\u5B58\u3057
+p37
+I3
+sV\u9006\u306B\u77ED\u6240\u306F
+p38
+I3
+sVmust
+p39
+(lp40
+sV\u3042\u306A\u305F\u306B
+p41
+I3
+sVbin
+p42
+I3
+sV\u305D\u308C\u306F\u5171\u901A\u6A5F\u80FD\u3068\u3057\u3066\u30EA\u30D5\u30A1\u30AF\u30BF\u3059\u308B\u306E\u304C\u73FE\u5B9F\u7684\u3067\u3059
+p43
+I3
+sV\u305D\u308C\u304C\u3069\u306E\u3088\u3046\u306B\u52D5\u304F\u304B\u306B\u3064\u3044\u3066\u306E\u6982\u8981
+p44
+I3
+sVreturn
+p45
+I3
+sVpython
+p46
+I3
+sVweb\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u306F
+p47
+I3
+sVurl\u69CB\u6210
+p48
+I3
+sV\u304A\u3082\u3057\u308D\u304F\u3066\u5275\u9020\u7684\u306A\u3053\u3068\u3067\u3059
+p49
+I3
+sV\u3084\u3063\u304B\u3044\u306A\u540C\u3058\u4F5C\u696D\u306E\u7E70\u308A\u8FD4\u3057\u3067\u30A4\u30E9\u30A4\u30E9\u3059\u308B\u3068\u3053\u308D\u3067\u3059
+p50
+I3
+sVweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u8A2D\u8A08\u306B\u3064\u3044\u3066\u8003\u3048\u3066\u307F\u307E\u3057\u3087\u3046
+p51
+I3
+sV\u3092\u5229\u7528\u3057\u3066\u3044\u308B\u5834\u5408\u306F
+p52
+I0
+sV\u3053\u308C\u3092\u5B9F\u73FE\u3059\u308B\u305F\u3081\u306B\u306F
+p53
+I3
+sVgatewai
+p54
+I3
+sV\u5FD8\u308C\u305A\u306B\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30B3\u30CD\u30AF\u30B7\u30E7\u30F3\u3092\u9589\u3058\u308B\u3053\u3068\u306A\u3069\u306B\u6C17\u3092\u4F7F\u3046\u3079\u304D\u3067\u3057\u3087\u3046\u304B
+p55
+I3
+sV\u7C21\u5358\u306A
+p56
+I3
+sV\u30B3\u30FC\u30C9\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u308B\u3088\u3046\u306B\u306A\u308A
+p57
+I3
+sV\u3068\u3066\u3082\u7C21\u5358\u306B\u8A00\u3046\u3068
+p58
+I3
+sVdesc
+p59
+I3
+sV\u62E1\u5F35\u5B50\u3092
+p60
+I3
+sVname
+p61
+I3
+sV\u81EA\u8EAB\u306B\u3053\u3046\u554F\u3044\u3066\u307F\u3066\u304F\u3060\u3055\u3044
+p62
+I3
+sV\u5171\u901A\u306E\u30A4\u30F3\u30D5\u30E9\u3068\u3057\u3066\u53D6\u308A\u6271\u3046\u306E\u304C\u6700\u5584\u3067\u3059
+p63
+I3
+sV\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306B\u306F\u57FA\u672C\u7684\u306A\u30ED\u30B8\u30C3\u30AF\u3092\u8A18\u8FF0\u3059\u308B\u305F\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u8A00\u8A9E\u304C\u7528\u610F\u3055\u308C\u3066\u3044\u307E\u3059
+p64
+I3
+sV\u79C1\u305F\u3061\u306F\u3068\u3066\u3082\u5B09\u3057\u304F\u601D\u3063\u3066\u3044\u307E\u3059
+p65
+I0
+sV\u8868\u793A\u3059\u308B\u305F\u3081\u306E
+p66
+I3
+sV\u3053\u306E\u8CEA\u554F\u306B\u7B54\u3048\u308B\u305F\u3081\u306B
+p67
+I3
+sV\u3053\u306E\u30B3\u30FC\u30C9\u3092
+p68
+I3
+sVhtml\u3092\u51FA\u529B\u3059\u308B
+p69
+I3
+sVsepar
+p70
+I3
+sV\u307E\u305F\u6642\u9593\u3092\u77ED\u7E2E\u3059\u308Bweb\u958B\u767A\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3067\u3042\u308B
+p71
+I3
+sV\u6587\u66F8\u306B\u9593\u9055\u3044\u3092\u767A\u898B\u3055\u308C\u305F\u5834\u5408\u3084
+p72
+I0
+sV\u30C7\u30D7\u30ED\u30A4\u3059\u308B\u306E\u3082\u3068\u3066\u3082\u7C21\u5358\u3067\u3059
+p73
+I3
+sVcommon
+p74
+I3
+sV\u30E1\u30F3\u30C6\u30CA\u30F3\u30B9\u3059\u308B\u305F\u3081\u306E\u30B9\u30C8\u30EC\u30B9\u304B\u3089\u89E3\u653E\u3055\u308C\u307E\u3059
+p75
+I3
+sV\u30B9\u30AF\u30EA\u30D7\u30C8\u304C\u3042\u308A\u307E\u3059
+p76
+I3
+sV\u5404\u30BB\u30AF\u30B7\u30E7\u30F3\u3092\u6539\u826F\u3059\u308B\u305F\u3081\u306E\u610F\u898B\u304C\u3042\u308B\u5834\u5408\u306F
+p77
+I0
+sV\u3053\u306E\u672C\u306Fweb\u958B\u767A\u3092\u697D\u3057\u304F
+p78
+I3
+sV\u8907\u6570\u306E\u74B0\u5883\u3067\u518D\u5229\u7528\u3059\u308B\u5834\u5408\u306B\u4F55\u304C\u8D77\u3053\u308A\u307E\u3059\u304B
+p79
+I3
+sV\u3053\u306E\u30C4\u30FC\u30EB\u3092\u81EA\u8EAB\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3067\u3069\u3046\u6709\u52B9\u6D3B\u7528\u3067\u304D\u308B\u304B
+p80
+I3
+sVweb\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3068\u306F
+p81
+I3
+sV\u30B9\u30AF\u30EA\u30D7\u30C8\u3054\u3068\u306B\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3078\u63A5\u7D9A\u3059\u308B\u305F\u3081\u306E
+p82
+I3
+sV\u304A\u3082\u3057\u308D\u3044\u4F5C\u696D\u306B\u96C6\u4E2D\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059
+p83
+I3
+sVlatest_book
+p84
+I3
+sVmysqldb
+p85
+I3
+sV\u7121\u6599\u30AA\u30F3\u30E9\u30A4\u30F3\u672C
+p86
+I0
+sV\u3060\u3063\u305F\u5834\u5408\u306F
+p87
+I3
+sVclose
+p88
+I3
+sV\u3053\u306E\u672C\u3092\u8AAD\u3093\u3067\u9802\u3051\u308B\u3053\u3068\u3092\u611F\u8B1D\u3057\u3066\u304A\u308A\u307E\u3059
+p89
+I0
+sVweb\u30D6\u30E9\u30A6\u30B6\u30FC\u304B\u3089\u305D\u306E\u30DA\u30FC\u30B8\u3092\u53C2\u7167\u3059\u308B
+p90
+I3
+sV\u3053\u3053\u3067\u306F
+p91
+I3
+sV\u30D5\u30A1\u30A4\u30EB\u306B\u306F
+p92
+I3
+sV\u30B3\u30F3\u30C6\u30F3\u30C4\u4E00\u89A7
+p93
+I0
+sV\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u30D5\u30A1\u30A4\u30EB\u3067\u3059
+p94
+I3
+sV\u30DA\u30FC\u30B8\u5358\u4F4D\u306E\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059
+p95
+I3
+sVpattern
+p96
+I3
+sVsection
+p97
+(lp98
+sV\u672C\u6765\u306E\u76EE\u7684\u3067\u3042\u308B
+p99
+I3
+sV\u8AAD\u307F\u3084\u3059\u304F\u30E1\u30F3\u30C6\u30CA\u30F3\u30B9\u3057\u3084\u3059\u3044\u30B3\u30FC\u30C9\u3067
+p100
+I3
+sV\u53D6\u5F97\u3057\u305F\u672C\u3067\u7E70\u308A\u8FD4\u3057\u51E6\u7406\u3092\u884C\u3044
+p101
+I3
+sVlabel
+p102
+(lp103
+sVcontent
+p104
+I3
+sV\u524D\u30BB\u30AF\u30B7\u30E7\u30F3\u3067\u7D39\u4ECB\u3057\u305F\u30A2\u30D7\u30ED\u30FC\u30C1\u3068
+p105
+I3
+sV\u3042\u306A\u305F\u306F\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3078\u306E\u30EC\u30B3\u30FC\u30C9\u306E\u633F\u5165
+p106
+I3
+sV\u30DA\u30FC\u30B8\u306E\u30C7\u30B6\u30A4\u30F3\u3092\u8A18\u8FF0\u3059\u308B\u305F\u3081\u306E
+p107
+I3
+sV\u3053\u306E\u30B3\u30FC\u30C9\u306Fcgi\u3068\u3057\u3066\u306E\u7528\u4EF6\u3092\u6E80\u305F\u3059\u305F\u3081\u306B
+p108
+I3
+sVprint
+p109
+I3
+sVimport
+p110
+I3
+sV\u79C1\u305F\u3061\u306F\u7686\u3055\u307E\u306E\u610F\u898B\u3092\u53CD\u6620\u3057\u305F\u3044\u3068\u601D\u3063\u3066\u3044\u307E\u3059
+p111
+I0
+sV\u524A\u9664\u51E6\u7406\u3092
+p112
+I3
+sVcgi
+p113
+I3
+sV\u304C\u306A\u305B\u308B\u6280\u3067\u3059
+p114
+I3
+sVurlpattern
+p115
+I3
+sV\u4F8B\u3068\u3057\u3066
+p116
+I3
+sVbook_list
+p117
+I3
+sV\u5FC5\u305A\u3057\u3082\u60AA\u3044\u3053\u3068\u3068\u306F\u8A00\u3048\u307E\u305B\u3093
+p118
+I3
+sV\u30BF\u30B0\u306A\u3069
+p119
+I3
+sVview
+p120
+I3
+sV\u6700\u5F8C\u306B
+p121
+I3
+sV\u3053\u306E\u7528\u8A9E\u306F\u6B63\u78BA\u306B\u4F55\u3092\u610F\u5473\u3057\u3066\u3044\u308B\u306E\u3067\u3057\u3087\u3046\u304B
+p122
+I3
+sV\u305D\u306E\u30BF\u30A4\u30C8\u30EB\u3092html\u306E\u30EA\u30B9\u30C8\u3068\u3057\u3066\u751F\u6210\u3057\u3066\u3044\u307E\u3059
+p123
+I3
+sV\u3053\u306E\u672C\u306F\u307E\u3060\u57F7\u7B46\u4E2D\u3067\u3059
+p124
+I0
+sVbodi
+p125
+I3
+sVhtml\u306E\u7D42\u4E86\u90E8\u5206\u306E\u884C
+p126
+I3
+sV\u3069\u3046\u3084\u3063\u3066web\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u69CB\u7BC9\u3059\u308B\u306E\u304B\u3092\u91CD\u70B9\u7684\u306B\u89E3\u8AAC\u3057\u307E\u3059
+p127
+I3
+sV\u3069\u306E\u30D3\u30E5\u30FC\u304C
+p128
+I3
+sV\u305D\u306E\u3046\u3061\u30B3\u30E1\u30F3\u30C8\u30B7\u30B9\u30C6\u30E0\u4F5C\u308A\u307E\u3059
+p129
+I0
+sV\u305D\u306E\u3042\u3068\u3067\u7A7A\u767D\u884C\u3092\u51FA\u529B\u3057\u3066\u3044\u307E\u3059
+p130
+I3
+sV\u3053\u306E\u30A8\u30C7\u30A3\u30B7\u30E7\u30F3\u306B\u3064\u3044\u3066
+p131
+I0
+sV\u79C1\u305F\u3061\u306F\u307E\u3060\u3053\u306E\u672C\u3092\u57F7\u7B46
+p132
+I0
+sVdon
+p133
+(lp134
+sV\u983B\u7E41\u306B\u30D7\u30ED\u30B0\u30E9\u30DF\u30F3\u30B0\u3057\u306A\u3051\u308C\u3070\u306A\u3089\u306A\u3044\u30BF\u30B9\u30AF\u3092\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u3057
+p135
+I3
+sVweb\u30B5\u30FC\u30D0\u306B\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057
+p136
+I3
+sVchapter
+p137
+(lp138
+I0
+aI1
+aI2
+aI3
+asVcapter01
+p139
+(lp140
+sV\u3082\u3061\u308D\u3093\u7FFB\u8A33\u8005\u3082\u7FFB\u8A33\u3067\u304D\u308B\u3053\u3068\u3092\u5B09\u3057\u304F\u601D\u3063\u3066\u3044\u307E\u3059\u3088
+p141
+I0
+sV\u306B\u3064\u3044\u3066\u89E3\u8AAC\u3057\u3066\u3044\u307E\u3059
+p142
+I3
+sV\u95A2\u5FC3\u4E8B\u306E\u5206\u96E2
+p143
+I3
+sV\u958B\u767A\u8005\u306F\u672C\u5F53\u306B
+p144
+I3
+sV\u3053\u306E\u30B1\u30FC\u30B9\u3067\u306F
+p145
+I3
+sVcapter03
+p146
+(lp147
+sV\u30E1\u30F3\u30C6\u30CA\u30F3\u30B9\u6027\u306B\u3059\u3050\u308C\u305F
+p148
+I3
+sV\u306E\u5C02\u9580\u5BB6\u306B\u306A\u3063\u3066\u3082\u3089\u3046\u3053\u3068\u3067\u3059
+p149
+I3
+sVcaption
+p150
+(lp151
+sV\u306F\u6BD4\u8F03\u7684\u65B0\u3057\u3044\u4E16\u4EE3\u306Eweb\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3067\u3059\u304C
+p152
+I3
+sV\u306E\u30AF\u30E9\u30B9\u3068\u3057\u3066\u8868\u3055\u308C\u305F
+p153
+I3
+sVcharfield
+p154
+I3
+sV\u3053\u306E\u30B3\u30FC\u30C9\u306F\u7406\u89E3\u3059\u308B\u306E\u304C\u975E\u5E38\u306B\u7C21\u5358\u3067\u3059
+p155
+I3
+sV\u305D\u306E\u958B\u59CB\u304B\u3089\u7D42\u4E86\u307E\u3067\u306E\u51E6\u7406\u3059\u3079\u3066\u3092\u7406\u89E3\u3067\u304D\u307E\u3059
+p156
+I3
+sVpub_dat
+p157
+I3
+sVbook
+p158
+(lp159
+I0
+aI3
+asV\u6700\u521D\u306B
+p160
+I0
+sV\u3069\u306Eurl\u30D1\u30BF\u30FC\u30F3\u3067\u547C\u3073\u51FA\u3055\u308C\u308B\u304B\u3092\u6307\u5B9A\u3057\u307E\u3059
+p161
+I3
+sV\u958B\u767A\u521D\u5FC3\u8005\u306E\u65B9\u3067\u3082
+p162
+I3
+sVsoc
+p163
+I3
+sV\u3092\u4F7F\u7528\u3059\u308B\u3068\u3069\u306E\u3088\u3046\u306B\u66F8\u3051\u308B\u306E\u304B\u3092\u7D39\u4ECB\u3057\u307E\u3059
+p164
+I3
+sV2\u70B9\u76EE\u306B\u3064\u3044\u3066
+p165
+I3
+sVsql\u30B9\u30C6\u30FC\u30C8\u30E1\u30F3\u30C8\u3092\u4F55\u5EA6\u3082\u66F8\u304F\u5FC5\u8981\u304C\u306A\u304F\u306A\u308A\u307E\u3059
+p166
+I3
+sV\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8
+p167
+I3
+sV\u3068\u547C\u3070\u308C\u3066\u3044\u307E\u3059
+p168
+I3
+sV\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u306E\u30C6\u30FC\u30D6\u30EB\u306B\u95A2\u3059\u308B\u8A18\u8FF0\u304C\u542B\u307E\u308C\u3066\u3044\u307E\u3059
+p169
+I3
+sV\u7406\u60F3\u306F
+p170
+I3
 sVdjango\u306E\u7D39\u4ECB
-p10
-(lp11
+p171
+(lp172
 I0
 aI1
 aI2
 aI3
 asVheader
-p12
-(lp13
-sV\u65E5\u672C\u8A9E
-p14
-I0
-sV\u7121\u6599\u30AA\u30F3\u30E9\u30A4\u30F3\u672C
-p15
-I0
-sV\u7AE0\u304C\u5C11\u306A\u3044\u306E\u3067\u304A\u5206\u304B\u308A\u304B\u3068\u601D\u3044\u307E\u3059\u304C
-p16
-I0
-sV\u306B\u3064\u3044\u3066\u89E3\u8AAC\u3057\u3066\u3044\u307E\u3059
-p17
+p173
+(lp174
+sVletmein
+p175
+I3
+sV\u3042\u306A\u305F\u306Eweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u8907\u6570\u7B87\u6240\u304B\u3089
+p176
+I3
+sV\u3092\u4F7F\u3046\u3053\u3068\u306B\u3088\u308A
+p177
+I3
+sV\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3078\u63A5\u7D9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u6642
+p178
+I3
+sV\u6A19\u6E96\u3092\u5229\u7528\u3059\u308B\u3053\u3068\u3067\u3059
+p179
+I3
+sV\u3055\u3089\u306B\u6700\u3082\u91CD\u8981\u306A\u3053\u3068\u3068\u3057\u3066
+p180
+I3
+sV\u3053\u3053\u304B\u3089\u306F\u4ED6\u306B\u4F55\u3082\u5B66\u3076\u5FC5\u8981\u306F\u3042\u308A\u307E\u305B\u3093\u3057
+p181
+I3
+sV\u8AAD\u307F\u3084\u3059\u304F
+p182
+I3
+sVselect
+p183
+I3
+sVfetchal
+p184
+I3
+sV\u30B9\u30AF\u30EA\u30D7\u30C8\u3092\u66F8\u304D
+p185
+I3
+sV\u3042\u308B\u76EE\u7684\u306B\u7279\u5316\u3057\u305F\u30DA\u30FC\u30B8\u3092\u4E00\u304B\u3089\u4F5C\u308B\u3068\u3044\u3046\u30A2\u30D7\u30ED\u30FC\u30C1\u306F
+p186
 I3
 sV\u3042\u306A\u305F\u304C
-p18
-I0
-sV\u30D0\u30FC\u30B8\u30E7\u30F3
-p19
-I0
-sV\u3053\u306E\u672C\u306F\u307E\u3060\u57F7\u7B46\u4E2D\u3067\u3059
-p20
-I0
-sV\u3053\u306E\u672C\u3092\u8AAD\u3093\u3067\u9802\u3051\u308B\u3053\u3068\u3092\u611F\u8B1D\u3057\u3066\u304A\u308A\u307E\u3059
-p21
-I0
-sV\u30B3\u30F3\u30C6\u30F3\u30C4\u4E00\u89A7
-p22
+p187
 I0
 sV\u3092\u53C2\u7167\u3059\u308B\u3053\u3068\u304C\u53EF\u80FD\u3067\u3059
-p23
+p188
 I0
+sV\u30B3\u30FC\u30C9\u3092\u8AAD\u307F\u3080\u3053\u3068\u304C\u3067\u304D
+p189
+I3
+sV\u30C7\u30B6\u30A4\u30CA\u30FC\u304C\u30ED\u30B8\u30C3\u30AF\u306B\u5F71\u97FF\u305B\u305A\u306Bhtml\u3092\u7DE8\u96C6\u3067\u304D\u308B\u3053\u3068\u3067\u3059
+p190
+I3
+sV\u3053\u306E\u30D5\u30A1\u30A4\u30EB\u306E\u62E1\u5F35\u5B50\u3092
+p191
+I3
+sV\u30D0\u30FC\u30B8\u30E7\u30F3
+p192
+I0
+sVmax_length
+p193
+I3
+sVinterfac
+p194
+I3
+sVusr
+p195
+I3
+sVtoc
+p196
+(lp197
+sV\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u304B\u3089\u672C\u306E\u540D\u524D\u3092\u691C\u7D22\u3059\u308B\u51E6\u7406
+p198
+I3
+sVtype
+p199
+I3
+sV\u3042\u306A\u305F\u306Eweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E
+p200
+I3
+sV\u3053\u3053\u3067\u91CD\u8981\u306A\u3053\u3068\u306F
+p201
+I3
+sVhead
+p202
+I3
+sV\u9593\u9055\u3048\u3066\u3057\u307E\u3046\u5371\u967A\u6027\u3092\u9AD8\u3081\u307E\u3059
+p203
+I3
+sV1998\u5E74\u4EE3\u306B\u6700\u3082\u30DD\u30D4\u30E5\u30E9\u30FC\u3060\u3063\u305F\u6280\u8853\u3067\u3042\u308B
+p204
+I3
+sV\u4F8B\u3048\u3070
+p205
+I3
+sV\u7A7A\u767D\u884C\u3092\u51FA\u529B
+p206
+I3
+sV\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3092\u4F7F\u308F\u305A
+p207
+I3
+sV\u305D\u308C\u306F\u6B21\u306E2\u70B9\u306E\u610F\u5473\u304C\u3042\u308A\u307E\u3059
+p208
+I0
+sV\u9069\u5207\u306A\u30B3\u30F3\u30BB\u30D7\u30C8\u3092\u9AD8\u3044\u30EC\u30D9\u30EB\u3067\u30C7\u30A3\u30B9\u30AB\u30C3\u30B7\u30E7\u30F3\u3057\u307E\u3059
+p209
+I3
+sVhtml\u306E\u958B\u59CB\u90E8\u5206\u306E\u884C
+p210
+I3
+sVfrom
+p211
+I3
+sVlink
+p212
+(lp213
+sV\u3053\u306E\u958B\u59CB\u3068\u7D42\u4E86\u306B\u95A2\u3059\u308B\u30BF\u30B9\u30AF\u306F
+p214
+I3
+sV\u524D\u30BB\u30AF\u30B7\u30E7\u30F3\u306Ecgi\u3067\u66F8\u304B\u308C\u305F\u30B3\u30FC\u30C9\u304C
+p215
+I3
+sV\u3042\u306A\u305F\u306E\u30C9\u30E1\u30A4\u30F3\u304C
+p216
+I3
+sV\u3053\u306E\u5168\u4F53\u7684\u306A\u30C7\u30B6\u30A4\u30F3\u3092\u611F\u3058\u53D6\u3063\u3066\u304F\u3060\u3055\u3044
+p217
+I3
+sVmvc\u30C7\u30B6\u30A4\u30F3\u30D1\u30BF\u30FC\u30F3\u3068\u306F
+p218
+I3
+sV\u8CEA\u306E\u9AD8\u3044web\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u958B\u767A\u3057\u305F\u308A
+p219
+I3
+sVweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u5168\u4F53\u3092\u30C0\u30A6\u30F3\u3055\u305B\u308B\u53EF\u80FD\u6027\u3082\u3042\u308A\u307E\u3059
+p220
+I3
+sV\u30D1\u30EF\u30D5\u30EB\u306Aweb\u30B5\u30A4\u30C8\u3092\u77ED\u671F\u9593\u3067\u958B\u767A\u3059\u308B\u305F\u3081\u306B\u5FC5\u8981\u306A\u6280\u8853\u3092\u5B66\u3079\u308B\u3067\u3057\u3087\u3046
+p221
+I3
+sVhtml\u8868\u793A\u7528\u306E\u30DA\u30FC\u30B8\u3092\u5206\u3051
+p222
+I3
+sVdefault
+p223
+I3
+sV\u30D6\u30E9\u30A6\u30B6\u30FC\u3067\u305D\u306E\u30DA\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B\u3060\u3051\u3067\u3059
+p224
+I3
+sV\u884C\u3092\u51FA\u529B\u3057
+p225
+I3
+sVcursor
+p226
+I3
+sV\u3042\u306A\u305F\u306Eweb\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u672C\u6765\u306E\u76EE\u7684\u3067\u3042\u308B
+p227
+(lp228
+sVlimit
+p229
+I3
+sV\u3042\u306A\u305F\u304C\u8FD1\u9053\u3092\u305B\u305A\u306B\u4F5C\u696D\u3057\u305F\u5834\u5408\u306E\u57FA\u672C\u7684\u306A\u30A2\u30D7\u30ED\u30FC\u30C1\u3092\u793A\u3057\u307E\u3059
+p230
+I3
+sV\u305F\u3063\u305F\u3053\u308C\u3060\u3051\u3067\u3059
+p231
+I3
+sV\u3092\u4F7F\u3046\u3068
+p232
+I3
+sVpasswd
+p233
+I3
+sV\u554F\u984C\u3092\u89E3\u6C7A\u3059\u308B\u305F\u3081\u306E\u624B\u6CD5\u3092\u660E\u78BA\u5316\u3057\u307E\u3059
+p234
+I3
+sVhtml
+p235
+I3
+sVdef
+p236
+I3
+sVconnect
+p237
+I3
+sV\u3053\u306E\u8FD1\u9053\u304C\u5E38\u306B\u5229\u7528\u3067\u304D\u308B\u3068\u306F\u9650\u3089\u306A\u3044\u306E\u3067
+p238
+I3
+sV\u7528\u306E\u30DA\u30FC\u30B8\u3068
+p239
+I3
+sV\u7AE0\u304C\u5C11\u306A\u3044\u306E\u3067\u304A\u5206\u304B\u308A\u304B\u3068\u601D\u3044\u307E\u3059\u304C
+p240
+I0
+sVgive
+p241
+(lp242
+sV\u30D3\u30B8\u30CD\u30B9\u30ED\u30B8\u30C3\u30AF
+p243
+I3
+sV\u8FD1\u9053\u305B\u305A\u306B\u7269\u4E8B\u3092\u6210\u3057\u9042\u3052\u308B\u3053\u3068\u306B\u3082\u4FA1\u5024\u304C\u3042\u308A\u307E\u3059
+p244
+I3
+sV\u3053\u306E\u30A2\u30D7\u30ED\u30FC\u30C1\u306B\u306F\u591A\u304F\u306E\u554F\u984C\u70B9\u3084\u5384\u4ECB\u4E8B\u304C\u3042\u308A\u307E\u3059
+p245
+I3
+sV\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u306B\u96C6\u4E2D\u3067\u304D\u308B\u3088\u3046\u306A\u30A4\u30F3\u30D5\u30E9\u3092\u63D0\u4F9B\u3057\u307E\u3059
+p246
+I3
+sV\u3067\u306F\u306A\u304F
+p247
+I0
+sVconf
+p248
+I3
+sV\u30D5\u30A1\u30A4\u30EB\u306F
+p249
+I3
+sV\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u3084\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u7570\u306A\u308B
+p250
+I3
+sV\u306E\u307F\u3067\u66F8\u304B\u308C\u305F
+p251
+I3
+sV\u3053\u308C\u3082\u69CB\u6587\u306E\u8A73\u7D30\u306B\u3064\u3044\u3066\u306F\u3042\u307E\u308A\u6C17\u306B\u305B\u305A
+p252
+I3
+sV\u30E2\u30C7\u30EB\u3092\u5229\u7528\u3059\u308B\u3053\u3068\u306B\u3088\u308A
+p253
+I3
+sV\u3042\u306A\u305F\u306E\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306B
+p254
+I3
+sV\u4F3C\u305F\u3088\u3046\u306A\u30B3\u30FC\u30C9\u3092\u30B3\u30D4\u30DA\u3059\u308B\u5FC5\u8981\u306F\u3042\u308A\u307E\u305B\u3093
+p255
+I3
+sV\u5FC5\u8981\u3067\u3042\u308C\u3070\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u306E\u30B9\u30B3\u30FC\u30D7\u5916\u3067\u3082\u4F5C\u696D\u304C\u3067\u304D\u307E\u3059
+p256
+I3
+sV\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u30C6\u30FC\u30D6\u30EB
+p257
+I3
+sV\u30D5\u30A1\u30F3\u30AF\u30B7\u30E7\u30F3\u3092\u547C\u3073\u51FA\u3057\u307E\u3059
+p258
+I3
 sV\u306E\u30BB\u30AB\u30F3\u30C9\u30A8\u30C7\u30A3\u30B7\u30E7\u30F3\u3078\u3088\u3046\u3053\u305D
-p24
+p259
 I0
-sVsection
-p25
-(lp26
-sV\u6587\u66F8\u306B\u9593\u9055\u3044\u3092\u767A\u898B\u3055\u308C\u305F\u5834\u5408\u3084
-p27
+sVtitl
+p260
+I3
+sV\u3053\u3053\u306B\u6700\u8FD1\u767A\u884C\u3055\u308C\u305F\u672C10\u518A\u3092\u30C7\u30FC\u30BF\u30D9\u30FC\u30B9\u304B\u3089\u53D6\u5F97\u3057
+p261
+I3
+sV\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u672A\u7D4C\u9A13\u306Eweb\u30C7\u30B6\u30A4\u30CA\u30FC\u304C
+p262
+I3
+sV1\u6587\u5B57\u8AA4\u3063\u305F\u3060\u3051\u3067
+p263
+I3
+sV\u3068\u3057\u3066\u63D0\u4F9B\u3055\u308C\u3066\u3044\u308B
+p264
 I0
-sVlabel
-p28
-(lp29
-sV\u3068\u3057\u3066\u63D0\u4F9B\u3055\u308C\u3066\u3044\u308B
-p30
-I0
-sVbook
-p31
-I0
-sVtoc
-p32
-(lp33
-sV\u79C1\u305F\u3061\u306F\u7686\u3055\u307E\u306E\u610F\u898B\u3092\u53CD\u6620\u3057\u305F\u3044\u3068\u601D\u3063\u3066\u3044\u307E\u3059
-p34
-I0
-sV\u8CEA\u306E\u9AD8\u3044web\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3092\u958B\u767A\u3057\u305F\u308A
-p35
+sV\u4E00\u304B\u3089\u518D\u958B\u767A\u3059\u308B\u3088\u3046\u306A\u3053\u3068\u304C\u306A\u3044
+p265
+I3
+sV\u3053\u306E\u8FD1\u9053\u304C\u3042\u306A\u305F\u306B\u3068\u3063\u3066\u975E\u5E38\u306B\u5F79\u7ACB\u3064\u3068\u3044\u3046\u3053\u3068\u3092\u8A8D\u8B58\u3057\u3066\u307B\u3057\u3044\u306E\u3067
+p266
+I3
+sVenv
+p267
+I3
+sVorder_bi
+p268
+I3
+sVyou
+p269
+(lp270
+sVconcern
+p271
+I3
+sV\u305D\u308C\u306F
+p272
 I3
 sV\u4ECA\u306E\u3068\u3053\u308D\u5FC3\u306B\u79D8\u3081\u3066\u304A\u3044\u3066\u304F\u3060\u3055\u3044
-p36
+p273
 I0
 sV\u7DE8\u96C6\u4E2D\u3067\u3042\u308A
-p37
+p274
 I0
-sV\u305D\u308C\u306F\u6B21\u306E2\u70B9\u306E\u610F\u5473\u304C\u3042\u308A\u307E\u3059
-p38
+sV\u30DA\u30FC\u30B8\u306E\u30C7\u30B6\u30A4\u30F3\u3092\u5909\u66F4\u3057\u3088\u3046\u3068\u3057\u305F\u5834\u5408\u306B\u4F55\u304C\u8D77\u3053\u308A\u307E\u3059\u304B
+p275
+I3
+sV\u4ED6\u306E\u30B3\u30FC\u30C9\u3092\u8AAD\u3080\u5FC5\u8981\u3082\u3042\u308A\u307E\u305B\u3093
+p276
+I3
+sVhttp
+p277
+I3
+sV\u3053\u306E\u30B9\u30AF\u30EA\u30D7\u30C8\u306E\u57FA\u672C\u7684\u306A\u52D5\u4F5C\u3092\u611F\u3058\u53D6\u3063\u3066\u304F\u3060\u3055\u3044
+p278
+I3
+sVmy_db
+p279
+I3
+sV\u306A\u306B\u304C\u8D77\u3053\u308A\u307E\u3059\u304B
+p280
+I3
+sVobject
+p281
+I3
+sVweb\u958B\u767A\u306E\u9577\u6240\u306F
+p282
+I3
+sVrender_to_respons
+p283
+I3
+sV\u79C1\u305F\u3061\u306F\u7686\u3055\u307E\u306E\u63F4\u52A9\u3092\u6B53\u8FCE\u3057\u3066\u3044\u307E\u3059
+p284
 I0
-sV\u3053\u306E\u30A8\u30C7\u30A3\u30B7\u30E7\u30F3\u306B\u3064\u3044\u3066
-p39
-I0
-sVcapter01
-p40
-(lp41
-sV\u79C1\u305F\u3061\u306F\u7686\u3055\u307E\u306E\u63F4\u52A9\u3092\u6B53\u8FCE\u3057\u3066\u3044\u307E\u3059
-p42
-I0
-sV\u3092\u5229\u7528\u3057\u3066\u3044\u308B\u5834\u5408\u306F
-p43
-I0
+sV\u306B\u3088\u308A
+p285
+I3
 sVcapter02
-p44
-(lp45
-sVlink
-p46
-(lp47
-sV\u305D\u306E\u3046\u3061\u30B3\u30E1\u30F3\u30C8\u30B7\u30B9\u30C6\u30E0\u4F5C\u308A\u307E\u3059
-p48
-I0
-sVcaption
-p49
-(lp50
-sV\u79C1\u305F\u3061\u306F\u307E\u3060\u3053\u306E\u672C\u3092\u57F7\u7B46
-p51
-I0
+p286
+(lp287
+sVuser
+p288
+I3
+sV\u3053\u306E\u672C\u306E\u76EE\u6A19\u306F
+p289
+I3
+sV\u3068\u3044\u3046\u8CEA\u554F\u3078\u306E\u7B54\u3048\u3068\u306A\u308B
+p290
+I3
+sV\u540C\u6642\u306B
+p291
+I3
+sV\u79C1\u305F\u3061\u306F\u305D\u308C\u30924\u3064\u306E\u30D5\u30A1\u30A4\u30EB\u306B\u5206\u5272\u3057\u307E\u3059
+p292
+I3
 sVclass
-p52
-(lp53
-sVmust
-p54
-(lp55
-sVchapter
-p56
-(lp57
-I0
-aI1
-aI2
-aI3
-asV\u3082\u3061\u308D\u3093\u7FFB\u8A33\u8005\u3082\u7FFB\u8A33\u3067\u304D\u308B\u3053\u3068\u3092\u5B09\u3057\u304F\u601D\u3063\u3066\u3044\u307E\u3059\u3088
-p58
-I0
-sV\u3092\u4F7F\u3046\u3068
-p59
+p293
 I3
-sVdon
-p60
-(lp61
-sV\u79C1\u305F\u3061\u306F\u3068\u3066\u3082\u5B09\u3057\u304F\u601D\u3063\u3066\u3044\u307E\u3059
-p62
-I0
-sV\u3067\u306F\u306A\u304F
-p63
-I0
-sVcapter03
-p64
-(lp65
+sV\u30ED\u30B8\u30C3\u30AF
+p294
+I3
+sV\u6700\u8FD1\u767A\u884C\u3055\u308C\u305F10\u518A\u5206\u306E\u672C\u306E\u540D\u524D\u3092\u691C\u7D22\u3059\u308B\u305F\u3081\u306E\u30AF\u30A8\u30EA\u30FC\u3092\u767A\u884C\u3057\u307E\u3059
+p295
+I3
+sV\u30C7\u30FC\u30BF\u30FC\u30D9\u30FC\u30B9\u63A5\u7D9A\u3092\u9589\u3058\u307E\u3059
+p296
+I3
+sV\u884C\u306E\u51FA\u529B\u3084
+p297
+I3
+sVurl
+p298
+I3
+sVcom
+p299
+I3
+sV\u30D3\u30E5\u30FC
+p300
+I3
+sVrequest
+p301
+I3
+sV\u3092\u51FA\u529B\u3057
+p302
+I3
 sVdjango
-p66
-(lp67
+p303
+(lp304
 I0
 aI3
-asV\u307E\u305F\u6642\u9593\u3092\u77ED\u7E2E\u3059\u308Bweb\u958B\u767A\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3067\u3042\u308B
-p68
+asV\u7B2C\u4E00\u306B
+p305
+I3
+sV\u3053\u306E\u554F\u984C\u3092\u7684\u78BA\u306B\u89E3\u6C7A\u3059\u308B\u306E\u304Cweb\u30D5\u30EC\u30FC\u30E0\u30EF\u30FC\u30AF\u3067\u3059
+p306
 I3
 sV\u6570\u9031\u9593\u306E\u9593\u306B\u6B8B\u308A\u306E\u7AE0\u3092\u57F7\u7B46\u3059\u308B\u4E88\u5B9A\u3067\u3059
-p69
+p307
 I0
-sVpreced
-p70
-(lp71
+sVexampl
+p308
+I3
 sV\u79C1\u305F\u3061\u306F
-p72
+p309
+(lp310
 I0
-sVyou
-p73
-(lp74
+aI3
+asV\u306F\u3042\u306A\u305F\u306E\u3084\u308A\u65B9\u306B\u5408\u308F\u305B\u308B\u305F\u3081\u306B
+p311
+I3
+sVendfor
+p312
+I3
 sVundefin
-p75
-(lp76
-sV\u30E1\u30F3\u30C6\u30CA\u30F3\u30B9\u3059\u308B\u305F\u3081\u306E\u30B9\u30C8\u30EC\u30B9\u304B\u3089\u89E3\u653E\u3055\u308C\u307E\u3059
-p77
+p313
+(lp314
+sV\u3042\u306A\u305F\u306F\u3053\u306E\u672C\u3092\u8AAD\u3080\u3053\u3068\u306B\u3088\u308A
+p315
 I3
-sV\u5404\u30BB\u30AF\u30B7\u30E7\u30F3\u3092\u6539\u826F\u3059\u308B\u305F\u3081\u306E\u610F\u898B\u304C\u3042\u308B\u5834\u5408\u306F
-p78
-I0
-sV\u3053\u306E\u672C\u306Fweb\u958B\u767A\u3092\u697D\u3057\u304F
-p79
+sVmodel
+p316
 I3
-sV\u6700\u521D\u306B
-p80
-I0
+sVorder
+p317
+I3
+sV\u3053\u3053\u3067\u306F\u4F55\u3089\u304B\u306E\u74B0\u5883\u8A2D\u5B9A\u304C\u3067\u304D\u308B\u69CB\u9020\u304C\u5FC5\u8981\u3067\u3059
+p318
+I3
+sVlatest
+p319
+I3
 ssS'titles'
-p81
-(lp82
+p320
+(lp321
 V\u30B3\u30F3\u30C6\u30F3\u30C4\u4E00\u89A7
-p83
+p322
 aVChapter 2: Django\u306E\u7D39\u4ECB
-p84
+p323
 aVChapter 3: Django\u306E\u7D39\u4ECB
-p85
+p324
 aVChapter 1: Django\u306E\u7D39\u4ECB
-p86
+p325
 asS'modules'
-p87
-(dp88
+p326
+(dp327
 sS'descrefs'
-p89
-(dp90
+p328
+(dp329
 sS'filenames'
-p91
-(lp92
+p330
+(lp331
 S'index'
-p93
+p332
 aS'chapter02'
-p94
+p333
 aS'chapter03'
-p95
+p334
 aS'chapter01'
-p96
+p335
 as.

File djangobook/resources/2.0/chapter01.txt

 ==========================================
 
 この本はWeb開発を楽しく、また時間を短縮するWeb開発フレームワークである Django について解説しています。
+Django を使うと、質の高いWebアプリケーションを開発したり、メンテナンスするためのストレスから解放されます。
 
-Django を使うと、質の高いWebアプリケーションを開発したり、メンテナンスするためのストレスから解放されます。
+Web開発の長所は、おもしろくて創造的なことです。
+逆に短所は、やっかいな同じ作業の繰り返しでイライラするところです。
+Django を使うことにより、そのイライラする作業を軽減し、 - あなたのWebアプリケーションの
+本来の目的である - おもしろい作業に集中することができます。
+これを実現するためには、一般的な形態のWeb開発パターンを高いレベルで抽象化し、
+頻繁にプログラミングしなければならないタスクをショートカットし、
+問題を解決するための手法を明確化します。
+同時に Django はあなたのやり方に合わせるために、
+必要であればフレームワークのスコープ外でも作業ができます。
+
+この本の目標は、あなたに Django の専門家になってもらうことです。
+この本が焦点としているものが2つあります。
+1点目について、
+私たちは Django は何をするのか、
+どうやってWebアプリケーションを構築するのかを重点的に解説します。
+2点目について、
+私たちは、
+「このツールを自身のプロジェクトでどう有効活用できるか」
+という質問への答えとなる、
+適切なコンセプトを高いレベルでディスカッションします。
+
+あなたはこの本を読むことにより、
+読みやすくメンテナンスしやすいコードで、
+パワフルなWebサイトを短期間で開発するために必要な技術を学べるでしょう。
+
+Webフレームワークとは
+--------------------------
+
+Django は比較的新しい世代のWebフレームワークですが、
+この用語は正確に何を意味しているのでしょうか?
+
+この質問に答えるために、
+フレームワークを使わず、
+Python のみで書かれた
+Webアプリケーションの設計について考えてみましょう。
+わたしたちはこの本を通して、
+この近道があなたにとって非常に役立つということを認識してほしいので、
+あなたが近道をせずに作業した場合の基本的なアプローチを示します。
+(この近道が常に利用できるとは限らないので、
+近道せずに物事を成し遂げることにも価値があります)
+さらに最も重要なこととして、
+Webアプリケーションがどのように動作しているのかを知ることで、
+あなたはより良いWeb開発者になれます。
+
+PythonでWebアプリケーションを作る最も簡単な方法のひとつは、
+1998年代に最もポピュラーだった技術である 
+Common Gateway Interface (CGI) 標準を利用することです。
+それがどのように動くかについての概要: 
+HTMLを出力する Python スクリプトを書き、
+拡張子を ".cgi"としてWebサーバに保存し、
+Webブラウザーからそのページを参照する。
+たったこれだけです。
+
+例として、ここに最近発行された本10冊をデータベースから取得し、
+表示するための Python CGI スクリプトがあります。
+構文の詳細についてはあまり気にせず、
+このスクリプトの基本的な動作を感じ取ってください。
+
+.. sourcecode:: python
+
+    #!/usr/bin/env python
+
+	import MySQLdb
+
+	print "Content-Type: text/html"
+	print # 空白行を出力
+
+	print "<html>"
+	print "<head><title>Books</title></head>"
+	print "<body>"
+
+	connection = MySQLdb.connect(user='me', passwd='letmein', db='my_db')
+	connection.cursor()
+	cursor.execute("SELECT name FROM books ORDER BY pub_date DESC LIMIT 10")
+
+    print "<ul>"
+
+	** for row in cursor.fetchall(): **
+		print “<li>%s</li>” % row[0]	
+
+	print "</ul>"
+
+	print "</body>"
+	print "</html>"
+
+	connection.close()
+
+まず最初に、このコードはCGIとしての用件を満たすために、
+"Content-Type"行を出力し、そのあとで空白行を出力しています。
+HTMLの開始部分の行(<html>タグなど)を出力し、データーベースへ接続し、
+最近発行された10冊分の本の名前を検索するためのクエリーを発行します。
+取得した本で繰り返し処理を行い、
+そのタイトルをHTMLのリストとして生成しています。
+最後に、HTMLの終了部分の行(</html>タグなど)を出力し、
+データーベース接続を閉じます。
+
+この例のように、
+ある目的に特化したページを一から作るというアプローチは、
+必ずしも悪いこととは言えません。
+第一に、このコードは理解するのが非常に簡単です。
+開発初心者の方でも、
+この Python コードを読みむことができ、
+その開始から終了までの処理すべてを理解できます。
+ここからは他に何も学ぶ必要はありませんし、他のコードを読む必要もありません。
+デプロイするのもとても簡単です。
+このファイルの拡張子を".cgi"として保存し、
+Webサーバにアップロードし、
+ブラウザーでそのページを表示するだけです。
+
+こんなに簡単なことですが、
+このアプローチには多くの問題点や厄介事があります。
+自身にこう問いてみてください。
+
+* あなたのWebアプリケーションの複数箇所から
+  データベースへ接続する必要がある時、
+  なにが起こりますか?
+  間違いなく、各 CGI スクリプトごとにデータベースへ接続するための
+  似たようなコードをコピペする必要はありません。
+  それは共通機能としてリファクタするのが現実的です。
+
+* 開発者は本当に"Content-Type"行の出力や、
+  忘れずにデータベースのコネクションを閉じることなどに気を使うべきでしょうか?
+  この種の決まりごとは開発者の生産性を落とし、
+  間違えてしまう危険性を高めます。
+  この開始と終了に関するタスクは、
+  共通のインフラとして取り扱うのが最善です。
+
+* このコードを、データベースやパスワードが異なる
+  複数の環境で再利用する場合に何が起こりますか?
+  ここでは何らかの環境設定ができる構造が必要です。
+
+* Python コーディング未経験のWebデザイナーが、
+  ページのデザインを変更しようとした場合に何が起こりますか?
+  1文字誤っただけで、Webアプリケーション全体をダウンさせる可能性もあります。
+  理想は、
+  ロジック(データベースから本の名前を検索する処理)用のページと
+  HTML表示用のページを分け、
+  デザイナーがロジックに影響せずにHTMLを編集できることです。
+
+この問題を的確に解決するのがWebフレームワークです。
+Webフレームワークは、あなたのアプリケーションに、読みやすく、
+メンテナンス性にすぐれた(一から再開発するようなことがない)
+コーディングに集中できるようなインフラを提供します。
+とても簡単に言うと、それは Django がなせる技です。
+
+MVCデザインパターンとは
+--------------------------
+
+前セクションで紹介したアプローチと
+Webフレームワークのアプローチの違いが簡単にわかる例を見てみましょう。
+ここでは、前セクションのCGIで書かれたコードが、 
+Django を使用するとどのように書けるのかを紹介します。
+私たちはそれを4つのファイルに分割します:
+
+.. sourcecode:: python
+
+    # models.py (データベーステーブル)
+
+    from django.db import models
+
+    class Book(models.Model):
+        name = models.CharField(max_length=50)
+        pub_date = models.DateField()
+
+
+    # views.py (ビジネスロジック)
+
+    from django.shortcuts import render_to_response
+    from models import Book
+
+    def latest_books(request):
+        book_list = Book.objects.order_by('-pub_date')[:10]
+        return render_to_response('latest_books.html', {'book_list': book_list})
+
+
+    # urls.py (URL構成)
+
+    from django.conf.urls.defaults import *
+    import views
+
+    urlpatterns = patterns('',
+        (r'^latest/$', views.latest_books),
+    )
+
+
+    # latest_books.html (テンプレート)
+
+    <html>
+    <head><title>Books</title></head>
+    <body>
+    <h1>Books</h1>
+    <ul>
+    {% for book in book_list %}
+    <li>{{ book.name }}</li>
+    {% endfor %}
+    </ul>
+    </body>
+    </html>
+
+これも構文の詳細についてはあまり気にせず、
+この全体的なデザインを感じ取ってください。
+ここで重要なことは、関心事の分離 (SoC: Separation of Concerns) です。
+
+* `models.py` ファイルには、
+  Python のクラスとして表された、
+  データベースのテーブルに関する記述が含まれています。
+  このクラスは *モデル* と呼ばれています。
+  モデルを利用することにより、
+  あなたはデータベースへのレコードの挿入、取得、更新、削除処理を
+  簡単な Python コードを使用することができるようになり、
+  SQLステートメントを何度も書く必要がなくなります。
+
+* `views.py` ファイルには、
+  ページ単位のビジネスロジックが含まれています。
+  `latest_books()` ファンクションは *ビュー* と呼ばれています。
+
+* `urls.py` ファイルには、どのビューが、
+  どのURLパターンで呼び出されるかを指定します。
+  このケースでは、URL `/latest/` により、
+  `latest_books()` ファンクションを呼び出します。
+  例えば、あなたのドメインが、 `example.com` だった場合は、
+  URL `http://example.com/latest/` により、
+  `latest_books()` ファンクションを呼び出します。
+
+* `latest_book.html` ファイルは、
+  ページのデザインを記述するための HTML テンプレートファイルです。
+  テンプレートには基本的なロジックを記述するためのテンプレート言語が用意されています。
+  例えば、 `{% for book in book_list %}` です。

File djangobook/templates/book.html

 {% extends 'base.html' %}
 {% block title %}{{ book.title }}{% endblock %}
+{% block js %}
+<script type="text/javascript" src="{{ MEDIA_URL }}jquery.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}doctools.js"></script>
+<script type="text/javascript" src="{{ MEDIA_URL }}searchtools.js"></script>
+{% endblock %}
 {% block content %}
 {% block body %}
 {% if redirect_from %}

File media/1/css/djangobook-ja.css

 #global-nav ul , #global-nav li { padding: 0; margin: 0; list-style: none; display: inline; }
-#global-nav a.about, #global-nav a.book, #global-nav a.contact, #global-nav a.errata { border-right: 1px solid #263E2B; }
+#global-nav a.about, #global-nav a.book, #global-nav a.contact, #global-nav a.errata, #global-nav a.root { border-right: 1px solid #263E2B; }
+
+.section p {
+    text-indent: 1em;
+}
+.section h1 {
+    font-size: 218%; line-height: 1.2em; margin-bottom: 0.8em;
+}
+.section h2 {
+    font-size: 150%; margin-bottom: 0.6em; line-height: 1.2em; color: #092e20;
+}
+.section cite {
+    white-space:nowrap;
+    color:#234f32;
+    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
+    font-size: 0.95em;
+    letter-spacing: 0.01em;
+}
+.section pre {
+    color:#234f32;
+    font-size:medium;
+    background:#E0FFB8;
+    border:1px solid #94da3a;
+    border-width:1px 0;
+    margin: 1em 0;
+    padding: .3em .4em;
+    overflow: hidden;
+}

File media/1/css/pygments.css

+.hll { background-color: #ffffcc }
+.c { color: #408090; font-style: italic } /* Comment */
+.err { border: 1px solid #FF0000 } /* Error */
+.k { color: #007020; font-weight: bold } /* Keyword */
+.o { color: #666666 } /* Operator */
+.cm { color: #408090; font-style: italic } /* Comment.Multiline */
+.cp { color: #007020 } /* Comment.Preproc */
+.c1 { color: #408090; font-style: italic } /* Comment.Single */
+.cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */
+.gd { color: #A00000 } /* Generic.Deleted */
+.ge { font-style: italic } /* Generic.Emph */
+.gr { color: #FF0000 } /* Generic.Error */
+.gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.gi { color: #00A000 } /* Generic.Inserted */
+.go { color: #303030 } /* Generic.Output */
+.gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
+.gs { font-weight: bold } /* Generic.Strong */
+.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.gt { color: #0040D0 } /* Generic.Traceback */
+.kc { color: #007020; font-weight: bold } /* Keyword.Constant */
+.kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
+.kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
+.kp { color: #007020 } /* Keyword.Pseudo */
+.kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
+.kt { color: #902000 } /* Keyword.Type */
+.m { color: #208050 } /* Literal.Number */
+.s { color: #4070a0 } /* Literal.String */
+.na { color: #4070a0 } /* Name.Attribute */
+.nb { color: #007020 } /* Name.Builtin */
+.nc { color: #0e84b5; font-weight: bold } /* Name.Class */
+.no { color: #60add5 } /* Name.Constant */
+.nd { color: #555555; font-weight: bold } /* Name.Decorator */
+.ni { color: #d55537; font-weight: bold } /* Name.Entity */
+.ne { color: #007020 } /* Name.Exception */
+.nf { color: #06287e } /* Name.Function */
+.nl { color: #002070; font-weight: bold } /* Name.Label */
+.nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
+.nt { color: #062873; font-weight: bold } /* Name.Tag */
+.nv { color: #bb60d5 } /* Name.Variable */
+.ow { color: #007020; font-weight: bold } /* Operator.Word */
+.w { color: #bbbbbb } /* Text.Whitespace */
+.mf { color: #208050 } /* Literal.Number.Float */
+.mh { color: #208050 } /* Literal.Number.Hex */
+.mi { color: #208050 } /* Literal.Number.Integer */
+.mo { color: #208050 } /* Literal.Number.Oct */
+.sb { color: #4070a0 } /* Literal.String.Backtick */
+.sc { color: #4070a0 } /* Literal.String.Char */
+.sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
+.s2 { color: #4070a0 } /* Literal.String.Double */
+.se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
+.sh { color: #4070a0 } /* Literal.String.Heredoc */
+.si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
+.sx { color: #c65d09 } /* Literal.String.Other */
+.sr { color: #235388 } /* Literal.String.Regex */
+.s1 { color: #4070a0 } /* Literal.String.Single */
+.ss { color: #517918 } /* Literal.String.Symbol */
+.bp { color: #007020 } /* Name.Builtin.Pseudo */
+.vc { color: #bb60d5 } /* Name.Variable.Class */
+.vg { color: #bb60d5 } /* Name.Variable.Global */
+.vi { color: #bb60d5 } /* Name.Variable.Instance */
+.il { color: #208050 } /* Literal.Number.Integer.Long */

File media/1/css/sphinxdoc.css

+/**
+ * Alternate Sphinx design
+ * Originally created by Armin Ronacher for Werkzeug, adapted by Georg Brandl.
+ */
+
+body {
+    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', 'Verdana', sans-serif;
+    font-size: 14px;
+    letter-spacing: -0.01em;
+    line-height: 150%;
+    text-align: center;
+    /*background-color: #AFC1C4; */
+    background-color: #BFD1D4;
+    color: black;
+    padding: 0;
+    border: 1px solid #aaa;
+
+    margin: 0px 80px 0px 80px;
+    min-width: 740px;
+}
+
+a {
+    color: #CA7900;
+    text-decoration: none;
+}
+
+a:hover {
+    color: #2491CF;
+}
+
+pre {
+    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
+    font-size: 0.95em;
+    letter-spacing: 0.015em;
+    padding: 0.5em;
+    border: 1px solid #ccc;
+    background-color: #f8f8f8;
+}
+
+td.linenos pre {
+    padding: 0.5em 0;
+    border: 0;
+    background-color: transparent;
+    color: #aaa;
+}
+
+table.highlighttable {
+    margin-left: 0.5em;
+}
+
+table.highlighttable td {
+    padding: 0 0.5em 0 0.5em;
+}
+
+cite, code, tt {
+    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
+    font-size: 0.95em;
+    letter-spacing: 0.01em;
+}
+
+hr {
+    border: 1px solid #abc;
+    margin: 2em;
+}
+
+tt {
+    background-color: #f2f2f2;
+    border-bottom: 1px solid #ddd;
+    color: #333;
+}
+
+tt.descname {
+    background-color: transparent;
+    font-weight: bold;
+    font-size: 1.2em;
+    border: 0;
+}
+
+tt.descclassname {
+    background-color: transparent;
+    border: 0;
+}
+
+tt.xref {
+    background-color: transparent;
+    font-weight: bold;
+    border: 0;
+}
+
+a tt {
+    background-color: transparent;
+    font-weight: bold;
+    border: 0;
+    color: #CA7900;
+}
+
+a tt:hover {
+    color: #2491CF;
+}
+
+.field-list ul {
+    margin: 0;
+    padding-left: 1em;
+}
+
+.field-list p {
+    margin: 0;
+}
+
+dl {
+    margin-bottom: 15px;
+}
+
+dd p {
+    margin-top: 0px;
+}
+
+dd ul, dd table {
+    margin-bottom: 10px;
+}
+
+dd {
+    margin-top: 3px;
+    margin-bottom: 10px;
+    margin-left: 30px;
+}
+
+.refcount {
+    color: #060;
+}
+
+dt:target,
+.highlight {
+    background-color: #fbe54e;
+}
+
+dl.glossary dt {
+    font-weight: bold;
+    font-size: 1.1em;
+}
+
+pre {
+    line-height: 120%;
+}
+
+pre a {
+    color: inherit;
+    text-decoration: underline;
+}
+
+.first {
+    margin-top: 0 !important;
+}
+
+div.document {
+    background-color: white;
+    text-align: left;
+    background-image: url(contents.png);
+    background-repeat: repeat-x;
+}
+
+/*
+div.documentwrapper {
+    width: 100%;
+}
+*/
+
+div.clearer {
+    clear: both;
+}
+
+div.related h3 {
+    display: none;
+}
+
+div.related ul {
+    background-image: url(navigation.png);
+    height: 2em;
+    list-style: none;
+    border-top: 1px solid #ddd;
+    border-bottom: 1px solid #ddd;
+    margin: 0;
+    padding-left: 10px;
+}
+
+div.related ul li {
+    margin: 0;
+    padding: 0;
+    height: 2em;
+    float: left;
+}
+
+div.related ul li.right {
+    float: right;
+    margin-right: 5px;
+}
+
+div.related ul li a {
+    margin: 0;
+    padding: 0 5px 0 5px;
+    line-height: 1.75em;
+    color: #EE9816;
+}
+
+div.related ul li a:hover {
+    color: #3CA8E7;
+}
+
+div.body {
+    margin: 0;
+    padding: 0.5em 20px 20px 20px;
+}
+
+div.bodywrapper {
+    margin: 0 240px 0 0;
+    border-right: 1px solid #ccc;
+}
+
+div.body a {
+    text-decoration: underline;
+}
+
+div.sphinxsidebar {
+    margin: 0;
+    padding: 0.5em 15px 15px 0;
+    width: 210px;
+    float: right;
+    text-align: left;
+/*    margin-left: -100%; */
+}
+