Django安装应用的位置在哪里?

0 投票
3 回答
705 浏览
提问于 2025-04-16 09:32

我在用Django的注册类,感觉挺不错的,但最新版本有个问题,而且不再更新了。

我已经把它安装到我的路径上(下载后用python setup.py install命令安装),然后把它加到了我项目的已安装应用里。

我用的是debian系统,它被复制到了/usr/lib/python2.5/site-packages/registration这个地方。

到现在为止一切都很好,但我编辑(甚至删除)它都对我的项目没有任何影响。

我在想,当你把一个类加到Django的已安装应用里时,它是不是被复制到别的地方了,但到底是哪里呢?

像往常一样,感谢你的时间!

3 个回答

1

我猜当你把一个类放进Django的已安装应用里时,它会被复制到某个地方,但到底在哪里呢?

这个猜测完全不对。

更好的猜测是,你的下载目录在Python的路径里。

可能你有这个模块的两个(或更多)副本。

你删除了一些,但并没有删除所有的副本。

继续在你的 PYTHONPATH 中寻找其他的副本。检查 sys.path 中的每一个目录。

注意,你的site-packages目录中的 .pth 文件也是你路径的一部分。

3

你可以试试最古老的方法来找出它的来源:

import registration
print registration.__file__
1

我建议你尝试以下的工作流程:

  • 每当你开始一个新项目时,创建一个新的 virtualenv(记得使用 --no-site-packages
  • 在这个项目的虚拟环境中安装你所有需要的依赖项(包括 django
  • 使用 pip install -e 来安装你需要可编辑版本的东西。
  • 另外,你也可以复制这个项目,然后使用 pip install -e hg+http://... 来安装。

撰写回答