2009-04-13 110 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也是一个包。