Django django-extensions 命令不可用( graph_models )
Posted
技术标签:
【中文标题】Django django-extensions 命令不可用( graph_models )【英文标题】:Django django-extensions commands unavailable ( graph_models ) 【发布时间】:2012-04-12 02:09:45 【问题描述】:我正在尝试安装 django-extensions + graphviz + pygraph,但我不能。 我已经完成了以下步骤(在 Ubuntu 下):
sudo apt-get install graphviz libgraphviz-dev graphviz-dev python-pygraphviz
在项目virtualenv中(运行python 2.7.2+):
source <path to virtualenv>/bin/activate
pip install django django-extensions
如果我跑
which python
它在我的 virtualenv 中选择 python,所以我使用的 python 是正确的。 在 virtualenv 的站点包中,我有 pygraphviz 和 django-extensions
python manage.py shell
import django_extensions
import pygraphviz
RUNS OK
在我的 django 项目中,我在 INSTALLED_APPS 中添加了“django_extensions”
但是当我跑步时
python manage.py help
我看不到命令并且它们不可用。
python manage.py graph_models -a -g -o model.png
Unknown command: 'graph_models'
Type 'manage.py help' for usage.
我该如何解决这个问题? 谢谢!
【问题讨论】:
欢迎您!这是一个现有的项目吗?即python manage.py runserver
工作正常吗?只是为了确认 - 运行 python manage.py help
时没有出现 django-extension
命令?
是的,我确认,没有显示 django-extension 命令
【参考方案1】:
在 manage.py shell 中运行:
from django.conf import settings; 'django_extensions' in settings.INSTALLED_APPS
如果它没有返回 True,那么这意味着你没有在 INSTALLED_APPS 中正确添加 'django_extensions',这将是 Django 找不到该命令的唯一原因。
【讨论】:
如果没有正确添加django_extensions
,python manage.py runserver
不会失败吗?
谢谢! settings.py 没有以正确的方式导入......现在一切都按预期工作......谢谢!
@pastylegs 我认为 runserver 就像 django_extension 根本不存在一样。谢谢你们的反馈。
@jpic 是的,我必须检查一下。反正很好看【参考方案2】:
实际上,如果您查看 manage.py 的代码,您会注意到它根据您当前的站点设置 DJANGO_SETTINGS_MODULES:比如说“mysite.settings”。 如果您希望您的 manage.py 列出其他扩展名(例如来自 django-extensions 或 django-evolution 的扩展名),那么您必须将您的项目根文件夹添加到您的 python 路径,否则您只会获得 bascc manage.py 命令。
【讨论】:
以上是关于Django django-extensions 命令不可用( graph_models )的主要内容,如果未能解决你的问题,请参考以下文章