Django管理命令ImportError

时间:2012-01-27 11:50:02

标签: python django importerror pythonpath

我将导入的模块存入我的qsl/management/commands/<customcommand>.py文件时出现问题。 事实上,我的app结构是:

qsl/management/commands/ : dir for my management commands
qsl/management/jobs/ : dir for my mangement jobs

作业是包含我希望在相应命令

中完成的作业的python类

e.g:

news command in qsl/management/commands/ imports news job in qsl/management/jobs/

我想要执行python manage.py news时的错误是importerror : no module named management.jobs.news

2 个答案:

答案 0 :(得分:9)

确保所有文件夹中都包含__init__.py,以便将它们作为模块导入。 这里描述了结构:https://docs.djangoproject.com/en/dev/howto/custom-management-commands/

你的结构有这样的东西:

qsl/
    __init__.py
    models.py
    management/
        __init__.py
        commands/
            __init__.py
            news.py
    jobs/
        __init__.py
        news.py
    tests.py
    views.py

答案 1 :(得分:0)

如果不是文件/目录结构中的拼写错误,那么您可能正在安装pip并遇到问题?

setup.py下的packages=[]下,确保包括

qsl.managementqsl.management.commands。这解决了我的问题。