SSブログ

Django チュートリアルを読みながら自分なりのメモ [Python]

Django チュートリアルは、以前にも読んだはずなのに、ちゃんと理解してないから身につかない。
今度は自分なりにポイントをメモしながら読み直してみた。
理解のために、「testsite に testapp を作る」と、チュートリアルとは名称を変えて例示。

[その1] 初期化,モデル作成,データベース API

http://michilu.com/django/doc-ja/tutorial01/
Django で管理する単位は「サイト」。その中に「アプリ」が1つ以上ある。
testsite の中に testapp を作るとすると、

$ python django-admin.py startproject testsite


でサイト全体にかかわるファイル manage.py settings.py urls.py が testsite ディレクトリの中にできる

settings.py の DATABASE_XXXX を編集し、サイトのバックエンドのDBを指定

$ cd testsite
$ python manage.py startapp testapp


で、アプリにかかわるmodels.py(モデル定義) views.py(ビュー定義) のファイルが testapp ディレクトリにできる

testapp/models.py を編集してモデルを作る
settings.py の INSTALLED_APPS に 'testsite.testapp' を追加

$ python manage.py syncdb

で、models.py の定義を元にデーターベースにテーブルが作成される

$ python manage.py shell


でインタラクティブシェル経由でモデルを操作できる

$ python manage.py runserver


で、開発用 Web サーバーが起動して port 8000 で listen する
(・・・けど、view が定義されてない今の時点では何もできない)

[その2]自動生成の admin サイトを探究する

http://michilu.com/django/doc-ja/tutorial02/
settings.py の INSTALLED_APPS に 'django.contrib.admin' を追加
編集したいモデルのクラスにインナークラス Admin を定義する

class Foo(models.Model):
    # ...
    class Admin:
        pass

python manage.py syncdb を実行
testsite/urls.py の "Uncomment this for admin:" と書かれた次の行のコメントアウトを外す

$ python manage.py runserver


で開発サーバーを起動し http://127.0.0.1:8000/admin/ にアクセスと admin サイトにログインして編集できる

class Admin の定義を変えると、モデルの編集できるデータ等をカスタマイズできる

admin サイトの見た目を変えるには
django/contrib/admin/templates から admin/base_site.html をどこかにコピーして
そのディレクトリを settings.py の TEMPLATE_DIRS に追加してあげる

ここまでのところでは、まだ settings.py testapp/models.py しかいじってない

[その3] 公開用のインタフェースビューを作成する

http://michilu.com/django/doc-ja/tutorial03/
settings.py の ROOT_URLCONF が 'testsite.urls' になっているはず
testsite/urls.py に、正規表現と、マッチした場合に呼び出す view のメソッドの tuple を記述

view のメソッドの中で、render_to_response() を呼び出す時に
・テンプレートファイル
・テンプレート内で参照する Python オブジェクト
を指定する
テンプレートファイルの配置はいろいろやり方はあるが(testapp がダブるけど)
testsite/testapp/templates/testapp/
に置くのが吉らしい。静的なファイルは
testsite/static/testapp
あたりに置くと良いような気がする。

[その4] 簡単なフォームデータ処理と汎用ビュー

http://michilu.com/django/doc-ja/tutorial04/
まだ、今の時点では消化しきれない。汎用ビューは使わなくても困らない。
もう少ししたら読み直す。


nice!(0)  コメント(1)  トラックバック(1) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 1

hoacits

No Prescription Tadalafil Envelt https://acialisd.com/# - canadian pharmacy cialis 5 mg rarkagever Comprare Cialis Con Paypal Lesineni <a href=https://acialisd.com/#>Cialis</a> Enveli como comprar cialis en espana
by hoacits (2020-07-10 05:48) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 1