Skip to main content
 首页 » 编程设计

python之Django:无法迁移从源代码安装的应用程序

2025年05月04日36del

我设置了一个 virtualenv 来进行安装。所有这些我都在 virtualenv 中运行:

$ hg clone https://bitbucket.org/tonioo/cmsplugin-poll 
$ cd cmsplugin-poll 
$ python setup.py install 

这是我得到的输出:http://pastebin.com/XCX4bUiA .

$ cd project-dir/ 
$ python manage.py migrate 
OSError: [Errno 20] Not a directory: '$VIRTUAL_ENV/local/lib/python2.7/site-packages/cmsplugin_poll-0.3-py2.7.egg/cmsplugin_poll/migrations' 

正如预期的那样,cmsplugin_poll-0.3-py2.7.egg 是一个蛋,而不是一个目录。如果我通过 pip 使用 install cmsplugin-poll 但我想修复此包中的某些内容,则效果很好。

我已经尝试过以下方法:

  • 删除并重新创建 virtualenv
  • 以 root 身份安装(我知道——这没有任何帮助)
  • rm -r cmsplugin_poll* 来自 site-packages 目录
  • 删除并重新下载存储库。
  • 升级一切,包括 pip。

有什么想法吗?提前谢谢你。

请您参考如下方法:

如果你打算处理包源,那么你不应该尝试用你的 Python 站点安装它——这会将源复制到解释器的站点文件夹,但是根据安装脚本的配置方式,基本要素可能是丢弃,包括测试源和其他与将其用作其他项目中的贡献包无关的包私有(private)位。

相反,您应该尝试执行 python setup.py develop。源将仅注册为您站点的包路径条目,但您将保留对随包分发的任何内容的完全访问权限。