Python 入門

ホーム > Django による Web 開発 > 管理スクリプト manage.py からのシェルの利用

管理スクリプト manage.py からのシェルの利用

Django には管理用のスクリプト manage.py があります。 開発サーバーを起動するときは・・・

python manage.py runserver

などとすることは、Django プロジェクトの作成 でお話ししました通りです。

manage.py には、この他にも非常に便利なオプションがいくつかあるのですが、 その中でも一番便利なんじゃないか、と思うオプションを紹介しておきます。

それは、shell オプションです。

これもやはり、manage.py スクリプトに次のように渡すだけで使えます。

python manage.py shell

shell オプションを渡すとその名の通りシェルが使えます。このとき Django の設定を読み込みます。 これにより、開発サーバーでスクリプトが実行されるのと同様の環境設定となります。

したがってこれを使えば例えば、次のように簡単にモデルの動作検証もできます。

keisukeo@keisukeo-CQ61:~/src/pueor$ python manage.py shell
Python 2.6.6 (r266:84292, Sep 15 2010, 16:22:56) 
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from pueor.todo.models import *
>>> items = Project.objects.all()
>>> for i in items:
...   print i.name
... 
Project 1
Project ABC
>>> 

実際のところデータベースの設定は settings.py にかかれているのですが、 それは自動的に参照されたことになります。

この他テンプレートの設定等、Django の設定に深く関わっているものもインタラクティブに個別の機能毎にテストできるので大変便利です。

ホーム > Django による Web 開発 > 管理スクリプト manage.py からのシェルの利用