我有一个 django 应用程序,我根据此处的文档打包: https ://docs.djangoproject.com/en/1.5/intro/reusable-apps/
我使用 setup.py 将应用程序安装到虚拟环境中。
./setup.py install
该应用程序的 Web UI 在虚拟环境中运行良好。但是我无法通过这个 vanilla 安装访问自定义管理命令。
(django_grm)[grm@controller django_grm]$ python ./manage.py sync_to_graphite
Unknown command: 'sync_to_graphite'
以下是命令不执行时虚拟环境的样子:
(django_grm)[grm@controller django_grm]$ ll /home/grm/venv/django_grm/lib/python2.7/site-packages
total 1148
...
-rw-rw-r-- 1 grm grm 243962 Jun 19 17:11 django_grm-0.0.4-py2.7.egg
...
但是,一旦我解压缩 .egg 文件,管理命令就会按预期工作。
(django_grm)[grm@controller django_grm]$ cd /home/grm/venv/django_grm/lib/python2.7/site-packages
(django_grm)[grm@controller site-packages]$ unzip django_grm-0.0.4-py2.7.egg
(django_grm)[grm@controller site-packages]$ ll /home/grm/venv/django_grm/lib/python2.7/site-packages
total 1152
...
-rw-rw-r-- 1 grm grm 243962 Jun 19 17:11 django_grm-0.0.4-py2.7.egg
drwxrwxr-x 6 grm grm 4096 Jun 19 17:16 dj_grm
...
(django_grm)[grm@controller site-packages]$ cd /home/grm/django_projects/django_grm/
(django_grm)[grm@controller django_grm]$ python ./manage.py sync_to_graphite
<success>
这是正常行为吗?感觉很不靠谱