2009-04-13 105 views
1

問題:找到類django.core.management的Python模塊execute_manager無法找到Python模塊execute_manager在django.core.management

這個問題與我的another question有關。

我試圖通過

python manage.py runserver 

的命令來啓動我的服務器是依賴於manage.py。 文件導入模塊execute_manager從類django.core.management如下

from django.core.management import execute_manager 

我試圖通過

$find . | grep exe 
./django/core/management/commands/sqlindexes.py 
找到失敗的Django的安裝文件夾中模塊的源代碼

同樣,我通過ack得到以下結果。

django/conf/project_template/manage.py 
2:from django.core.management import execute_manager 
11: execute_manager(settings) 

django/core/management/__init__.py 
333:def execute_manager(settings_mod, argv=None): 

examples/manage.py 
2:from django.core.management import execute_manager 
11: execute_manager(settings) 

如何,你可以找到在類django.core.management模塊execute_manager的源代碼?

+0

當你發現自己在做這件事情時,你需要問自己這是否是讓服務器啓動的預期方式。你不應該擔心這一點,並確保你的python和django路徑設置正確。這是無視實際問題。 – 2009-04-13 21:06:11

+0

@Paolo:我同意你的意見。但是,我想知道我的代碼是如何工作的。這使我能夠找到錯誤。 – 2009-04-13 23:58:10

回答

7

execute_manager是在django.core.management包中的__init__.py文件中定義的函數,而不是模塊。這就是爲什麼你的grep找不到它。

你ACK找到了這個結果,你粘貼:

django/core/management/__init__.py 
333:def execute_manager(settings_mod, argv=None): 
2

這是文件$PYTHON_SITE_PACKAGES/django/core/management/__init__.py英寸execute_manager是一個功能,而不是一個模塊,並且django.core.management模塊的代碼位於django/core/management/__init__.py中,因爲django.core.management也是一個包。