Python Django 超入門
秀和システム
著者:掌田津耶乃
はじめに
目次
Chapter1 Djangoを使ってみよう
1-1 PythonとDjangoを準備しよう
「パイソン」って、なに?
Djandoってなに_
Web開発に必要なものは?
Anacondaを使おう!
Windows版のインストール
macOS版のインストール
他にいるものは?
1-2 Anacondaの環境を整えよう!
Navigatorを起動しよう
ホームにあるアプリケーション類
Environmentと仮想環境
仮想環境を作ろう
仮想環境にDjangoを入れる
Spydarを用意しよう
Spyderを起動しよう
プリオジェクトを作ってみる
ファイルを作って編集しよう
1-3 Djangoのプログラムを作ってみよう
Djangoプロジェクトを作る!
Spyderでプロジェクトを開く
Djangoプロジェクトの中身を見よう
Webアプリケーションを実行しよう
この章のまとめ
Chapter2 ビューとテンプレート
2-1 Webページの基本を覚えよう
MVCってなに?
プロジェクトとアプリケーション
アプリケーションを作ろう
helloアプリケーションをチェック!
views.pyにページ表示を書く
views.pyで実行すること
urls.pyについて
アクセスしてみよう!
helloにurls.pyを作成する
hello/urls.pyのスクリプト
クエリーパラメーターを使おう
request.GETの働き
パラメーターがないときどうする?
スマートな値の送り方
パターンはいろいろ作れる!
2-2 テンプレートを利用しよう
テンプレートってなに?
アプリケーションの登録
テンプレートはどこに置く?
index.htmlを作成する
urlpatternsの修正
indexの修正
テンプレートに値を渡す
複数ページの移動
リンクのURLとurlpatterns
静的ファイルを利用する
2-3 フォームで送信しよう
フォームを用意しよう
CSRF対策について
ビュー関数を作成する
Djangoのフォーム機能を使う
forms.pyを作成する
Formクラスの書き方
ビュー関数を作る
HelloFormを表示する
フィールドをタグで整える
ビュー関数をクラス化しよう
HelloViewクラスを作る
クラスか、関数か?
2-4 さまざまなフィールド
formsモジュールについて
さまざまな入力フィールド
日時に関するフィールド
チェックボックス
3択のNullBooleanField
プルダウンメニュー(チョイス)
ラジオボタン
選択リスト
複数項目の選択は?
この章のまとめ
Chapter3 モデルとデータベース
3-1 管理ツールでデータベースを作ろう
データベースって何?
データベースの設定をしよう
他のデータベースを使う場合は?
データベースの構造について
テーブルを設計しよう
モデルを作成しよう
Friendモデルクラスの作成
マイグレーションしよう
マイグレーションファイルの中身って?
3-2 管理ツールを使おう
管理ユーザーを作成しよう
Friendを登録しよう
管理ツールにログインする
管理ツール画面について
Friendsテーブルを見てみる
利用者の管理ページ
利用者を追加してみる
本格開発に管理ツールは必須!
3-3 レコード取得の基本とManager
レコードを表示しよう
モデルの内容を表示する
モデルの表示を完成させよう
指定のIDのレコードだけ取り出す
ビュー関数を修正しよう
Managerクラスってなに?
モデルのリストを調べてみる
valuesメソッド
特定の項目だけ取り出す
リストとして取り出す
最初と最後、レコード数
QuerySetの表示をカスタマイズ!
3-4 CRUDを作ろう
CRUDってなに?
Createを作ろう
ModelFormを使う
Updateを作ろう
Deleteを作ろう
CRUDより重要なものは?
3-5 検索をマスターしよう
検索とフィルター
あいまい検索ってなに?
大文字小文字を区別しない
数値の比較
○○歳以上○○歳以下はどうする?
AもBもどっちも検索したい!
リスト使って検索
この章のまとめ
Chapter4 データベースを使いこなそう
4-1 データベースを更に極める!
レコードの並び替え
指定した範囲のレコードを取り出す
レコードを集計するには?
SQLを直接実行するには?
SQLクエリを実行しよう
SQLは非常手段?
4-2 バリデーションを使いこなそう
バリデーションってなに?
forms.Formのバリデーション
バリデーションをチェックする
サンプルフォームでバリデーションチェック
どんなバリデーションがあるの?
バリデーションを追加する
ModelFormでのバリデーションは?
チェックのタイミング
chekでFriendモデルを利用する
モデルのバリデーション設定は?
モデルで使えるバリデータ
バリデータ関数を作る
フォームとエラーメッセージを個別に表示
4-3 ページネーション
ページネーションってなに?
Paginatorクラスの使い方
Friendをページごとに表示する
ページの移動はどうする?
ページ移動リンクの仕組み
4-4 リレーションシップとForeignKey
テーブル連携って?
リレーションシップの設定方法
メッセージの投稿システムを考える
Messageモデルを作ろう
マイグレーションしよう
admin.pyの修正
管理ツールでMessageを使おう
Messageページを作ろう
MessageFormを作る
message関数を作る
message.htmlテンプレートを書こう
indexに投稿メッセージを表示するには?
この章のまとめ
Chapter5 本格アプリ作りに挑戦!
5-1 ミニSNSを作ろう!
ミニTwitterモドキを作ってみる
Snsアプリケーションを追加しよう
アプリを設計する
データベースを設計する
モデルを作成しよう
マイグレーションしよう
admin.pyにsnsのテーブルを登録する
管理ツールでユーザー登録!
public Groupを用意する
5-2 スクリプトを作成しよう
フォームを作る
GroupCheckFormについて
GroupSelectFormについて
FriendsFormについて
PostFormについて
urls.pyの作成
views.pyの作成
index関数について
groupsビュー関数について
Friendの追加について
投稿とシェア投稿について
「いいね!」の処理
get_your_group_messageが最大のポイント!
5-3 テンプレートを作ろう
テンプレートのフォルダを用意する
layout.htmlを作る
index.htmlを作る
post.htmlを作る
share.htmlを作る
groups.htmlを作る
スタイルシートを用意する
これからさきはどうするの?
Addendum Python超入門!
A-1 Pythonの基本を覚えよう
Pythonの2つの動かし方
qtconsoleを実行しよう
スクリプトの書き方のポイント
値には種類がある!
計算しよう!
値のキャストについて
比較演算
変数ってなに?
変数の名前はどうするの?
A-2 制御構文を使おう
条件分岐「if」
elifで複数条件を使う
繰り返し「while 」
A-3 多数の値をまとめて扱う
たくさんの値を保管する「リスト」
リストの保管場所は最初に用意する!
リストも計算できる!
リストと繰り返し構文「for」
値を変更できない「タプル」
意外と使う「レンジ」
同じ値が存在しない「セット」
名前で値を管理する「辞書」
辞書とfor文
A-4 関数からクラスへ
決まった処理をいつでも実行!
「組み込み関数」ってなに?
関数の呼び出し方
input関数で入力しよう
モジュールと関数
関数を作る
クラスってなに?
クラスはどう作るの?
クラスを作ってみよう
メソッドについて
クラスはインスタンスで利用する
Memberクラスを使ってみよう
初期化メソッドを利用しよう
名前付きの引数を使おう
継承は超便利!
Pythonの基本はこれでおしまい!
索引