我不明白为什么这里找不到命令:
khandelwal@simba:/opt/code/cdcschool$ python schoolcommand/manage.py createcampaign
Unknown command: 'createcampaign'
Type 'manage.py help' for usage.
当这工作正常时:
khandelwal@simba:/opt/code/cdcschool$ cd schoolcommand/
khandelwal@simba:/opt/code/cdcschool/schoolcommand$ python manage.py createcampaign
Error: Provide: <type start_date end_date>
我的命令就在这里:
$ ls schoolcommand/management/
commands __init__.py __init__.pyc
$ ls schoolcommand/management/commands/
campaignmanager.py createcampaign.py __init__.py
campaignmanager.pyc createcampaign.pyc __init__.pyc
如何修复它以便我可以:
khandelwal@simba:/opt/code/cdcschool$ python schoolcommand/manage.py createcampaign
下面是PYTHONPATH,DJANGO_SETTINGS_模块的值,其中有一个位置my SETTINGS.py。
khandelwal@simba:/opt/code/cdcschool$ ls
Procfile README requirements.txt schoolcommand
khandelwal@simba:/opt/code/cdcschool$ echo $PYTHONPATH
khandelwal@simba:/opt/code/cdcschool$ echo $DJANGO_SETTINGS_MODULE
khandelwal@simba:/opt/code/cdcschool$ find . -name settings.py
./schoolcommand/settings.py
khandelwal@simba:/opt/code/cdcschool$
使用Django时,有两个重要的规则。
首先。
您有一个
settings.py
文件,该文件必须由web服务器使用,并且所有的manage.py命令都必须使用。所有人。查找
settings.py
文件的默认位置是当前工作目录。您可以使用PYTHONPATH
和DJANGO_SETTINGS_MODULE
环境变量来更改它。manage.py
是在与settings.py
相同的目录中为您创建的。如果不想使用
manage.py
,可以使用django-admin.py --settings=some.module
。第二。
manage.py
命令没有指向它们的任何“路径”。它们都只是一个单词的命令,不管它们在应用程序树中的位置如何。除非(不知何故)您的
settings.py
与您的manage.py
不在同一目录中,否则您永远不会这样做。您通常要执行以下操作:
如果您的设置在
code/schoolcommand
中,则表示您的网站和所有命令都将在该目录中运行。相关问题 更多 >
编程相关推荐