Django では、ほとんどの場合、実行manage.py
中にエラーが発生すると、エラーの完全なスタック トレースが取得されず、例外のテキストだけが取得されるため、デバッグが非常に困難になります。例:
python manage.py graph_models -a -g -o my_project.png
AttributeError: 'str' object has no attribute '__module__'
(これはgraph_modelsアドオン用ですが、組み込みコマンドでも発生します。私が見つけた唯一の例外はrunserver
、他のコマンドと同じエラーが発生しますが、完全なスタックトレースを出力することです)
これが私のmanage.pyファイルです。私のプロジェクトはもともと Django 1.1 用に作成されましたが、最近 1.5 にアップグレードしました。
#!/usr/bin/env python
import os, sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ctree.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)