牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

久しぶりにDjangoやろうと思ってざっとチュートリアルやってみたら、ちょいと変わってたり忘れてたりしてたのでメモ


環境:MacOSX10.7, Python2.7, Django1.3

インストール

MacPortsでPython2.7とDjango1.3をインストール

sudo port install python27
sudo port install py27-django

プロジェクト作成

MacPortsでインストールすると
django-admin.py
ではなく
django-admin-2.7.py
になるから

django-admin-2.7.py startproject mysite

MacPorts使ってるとこういうのよくあるよね(´・ω・`)

データベースの設定

簡単にsqlite3で

settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'sqlite3.db', 
:

adminページにpollsを表示させるためには

Part2『Make the poll app modifiable in the admin』あたり。

ここ変わったよね? 以前のverはモデルにゴニョゴニョ書いてた気がする。

pollsディレクトリに『/polls/admin.py』を作成して、

from polls.models import Poll
from django.contrib import admin

admin.site.register(Poll)

とか書く。

"no such table: django_admin_log"

tutorial Part2 あたりで、
『no such table: django_admin_log"』とエラーが出たら

python manage.py syncdb

すれば治る。
syncdbをやり忘れてただけかな?

テンプレートの置き場所

import os
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
:
TEMPLATE_DIRS = (
    os.path.join(BASE_DIR, 'templates'),
)

以前は、これで『/ルート/templates/』に置けるようにってやってたけど、
最近もこれなのかな?
他にベターな方法ないのかな。

チュートリアルPart4のテンプレートであるHTMLファイルの最終的な名前

  • /templates/polls/
    • index.html
    • poll_detail.html
    • results.html

メモ