SEO対策ならSEO knowledge

TOPプログラムPython>Django

Djangoをインストールしたら最初にすること その2(DB作成・接続・同期とadminモジュールの実装)

OSはCentOS5系、接続する先のDBはmysqlを前提として話を進めていきます。

1.MYSQLdb(mysql-python)をサーバにインストール

  • これがないとPythonがMySQLに接続できません。
# yum -y install mysql-devel
# easy_install mysql-python

2.テスト用のDBを作成(mysql)

$ mysqladmin -u root -p create test_project
Enter password:

3.DBへの接続情報を設定(mysql)

  • settings.py
DATABASE_ENGINE = 'mysql'
DATABASE_NAME = 'test_project'
DATABASE_USER = 'root'
DATABASE_PASSWORD = '*****'
DATABASE_HOST = ''
DATABASE_PORT = ''

4.adminモジュールの有効化

  • test_project/settings.pyにadminモジュールを書き加える
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.admin', # ←adminモジュールを追加
)

デフォルトで読み込まれるモジュール一覧

  • django.contrib.auth ・・・ 認証システム
  • django.contrib.contenttypes ・・・ コンテントタイプフレームワーク
  • django.contrib.sessions ・・・ セッションフレームワーク
  • django.contrib.sites ・・・ 一つのDjangoで複数のサイトを管理するためのフレームワーク

5.syncdbコマンドでテーブルを自動生成

スーパーユーザを作るか聞かれるので、yesと返答すると、 ユーザ名・パスワード・メールアドレスを聞かれるので順に入力

$ python manage.py syncdb

Creating table auth_permission
Creating table auth_group
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 'yourname'):
E-mail address: test@test.com
Password:
Password (again):
Superuser created successfully.
Installing index for auth.Permission model
Installing index for auth.Message model

Creating table django_admin_log
Installing index for admin.LogEntry model

6.urls.pyの編集

以下3箇所のコメントアウトを外す

...
# from django.contrib import admin
# admin.autodiscover()

urlpatterns = patterns('',
    # Example:
...
    #(r'^admin/(.*)', admin.site.root),
)
...
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    # Example:
...
    (r'^admin/(.*)', admin.site.root),
)

7.admin画面の表示確認

モジュールの読み込みを変えたため、サーバを(再)起動してから表示確認する。

  • (開発サーバの場合)
$ python manage.py runserver

http://test.com:8080/admin で表示を確認する

  • (Apacheの場合)
# service httpd restart

http://test.com/admin で表示を確認する

Django administration

Username:  
Password:  

Log in

と表示されていれば成功です。手順5で作成したアカウントでログインしてレコードを作ったり検索したりしてみてください。

次へ

 このエントリをはてなブックマークに登録 このエントリをlivedoorクリップに登録 Yahoo!ブックマークに登録 このエントリを del.icio.us に登録 Google Bookmarks に追加
[ 新規 | 編集 | 削除 | 凍結 ]    [ 新着 | 履歴 | ヘルプ ]

この記事に関連する求人

携帯サイト

携帯サイトはこちら

QRコード

http://it.kndb.jp/m

ページ上部へ