ひとまずWindows環境に入れてみよう。参考にするサイトはこちら。
Pythonのバージョンは2.7.1とし、Djangoのバージョンは1.2.4
1. Pythonのダウンロード&インストール
2.7.1のmsiをダウンロードしてきて、インストール。インストール先はC:\Python2.7
マイコンピュータ右クリック->プロパティ->詳細設定->環境変数
システム環境変数のpathに
C:\Python2.7:C:\Python27\Tools\Scripts
を追加
2. Djangoのダウンロード&インストール
1.2.4のtar.gzをダウンロードしてきて、解凍。
コマンドプロンプトから解凍したフォルダに移動し、
> python setup.py install
でインストール開始。その後、
- C:¥Python27¥Lib¥site-packages
- C:¥Python27¥Scripts¥django-admin.py
3. Projectの作成
適当にフォルダを作成C:\DjangoSample
> django-admin.py startproject ecsite
とするも、django-admin.pyが見つからないと怒られる。
先ほど環境変数に設定したのは"C:\Python27\Tools\Scripts"であり、django-admin.pyのある"C:\Python27\Scripts"ではないから、そりゃ見つからないわな。
ということで環境変数pathに"C:\Python27\Scripts"を追加し、コマンドプロンプトを再起動
もう一度C:\DjangoSampleにて
> django-admin.py startproject ecsite
を実行すると見事__init__.py, manage.py, settings.py, urls.pyの4つのファイルが生成される
4. アプリケーションサーバーの実行
ecsiteフォルダに移動し、
>C:\DjangoSample\ecsite>manage.py runserver
を実行すると
>Validating models...
>0 errors found
>
>Django version 1.2.4, using settings 'ecsite.settings'
>Development server is running at http://127.0.0.1:8000/
で待機状態になるので、ブラウザでhttp://127.0.0.1:8000/にアクセスすると
> [24/Dec/2010 16:50:40] "GET / HTTP/1.1" 200 2051
となり、ブラウザでも"It Worked!"というページが表示されれば無事成功。
5. sql作成
settings.pyファイルを開き、DATABASESのENGINEをsqlite3に変更し、Nameをフルパスで指定。TIME_ZONEをAsia/Tokyoにし、LANGUAGE_CODEをjaにする。
DATABASES = {
'default': {
'ENGINE': 'sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'C:\\DjangoSample\\ecsite\\ecsite.sqlite', # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}
TIME_ZONE = 'Asia/Tokyo'
LANGUAGE_CODE = 'ja'
その後
> manage.py syncdb
コマンドでDBを初期化。
初めて作成するとスーパーユーザーがいないから作成するかと聞かれるのでyesとし、名前とメールアドレスとパスワードを入力する。
C:\DjangoSample\ecsite>manage.py syncdb
>Creating table auth_permission
>Creating table auth_group_permissions
>Creating table auth_group
>Creating table auth_user_user_permissions
>Creating table auth_user_groups
>Creating table auth_user
>Creating table auth_message
>Creating table django_content_type
>Creating table django_session
>Creating table django_site
>
>You just installed Django's auth system, which means you don't have any superusers defined.
>Would you like to create one now? (yes/no): yes
>Username (Leave blank to use 'administrator'): admin
>E-mail address: admin@gyk.com
>Password:
>Password (again):
>Superuser created successfully.
>Installing index for auth.Permission model
>Installing index for auth.Group_permissions model
>Installing index for auth.User_user_permissions model
>Installing index for auth.User_groups model
>Installing index for auth.Message model
>No fixtures found.
6.sqlite3のインストール
SQLiteのサイトからsqlite-shell-win32-x86-3070400.zipをダウンロードして解凍し、sqlite3.exeをC:\sqlite3フォルダに移動させてこのパスを環境変数に追加
> manage.py dbshell
でsqliteの対話モードに入ったら、SELECT文などでテーブルに格納されているデータやテーブルの構造なども含むデータベースに関する情報をSQL文の形式で一度出力してみる。これをダンプという。
sqlite>.dump
7. アプリケーションの作成
プロジェクトフォルダにてコマンドプロンプトから
> manage.py startapp itempage
にて、__init__.py, models.py, tests.py, views.pyが作成される
続いてDjangoにアプリケーションを認識させるためにsettings.pyのINSTALLED_APPSの項目に作成したアプリケーション名(ecsite.itempage)を追加する
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'ecsite.itempage'
)
8. モデルの作成
「モデルは基本的にデータベースの1テーブルと対応し、フィールドはDBテーブルの1カラムにマッピング」
実際に作成するモデルはmodels.pyに記述する。記述内容は参考サイトのまんま
9. モデルをHTMLに表示
テンプレートを作成するフォルダを適当に作成し(C:\DjangoSample\templates)、settings.pyのTEMPLATE_DIRSに記述。
実際のテンプレートとなるitem.htmlはpage/item.htmlに配置。
URLディスパッチャをurls.pyに定義。URLディスパッチャで定義したメソッドをビュー関数views.pyに記述。
以上、簡単なお買い物ECサイト構築。
確かに簡単に作れる気がする。pythonをもっと勉強しなければいけないけれども。
0 件のコメント:
コメントを投稿