首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >转接到新计算机后在虚拟环境中找不到烧瓶扩展

转接到新计算机后在虚拟环境中找不到烧瓶扩展
EN

Stack Overflow用户
提问于 2012-07-07 13:51:59
回答 2查看 1.7K关注 0票数 1

首先,我承认我可能不完全理解虚拟环境的内部运作,所以如果我完全失败了,请原谅我。

对于我的桌面(MacOSX10.7+Python2.7),我有一个虚拟环境,它包含了我用Python构建的web应用程序(使用Flask作为框架)。我想在笔记本电脑上做一些工作,所以我压缩了包含虚拟环境和代码的目录,并将其转移到我的笔记本电脑(MacOSX10.7+Python2.7)。

解压缩后,我尝试启动我的应用程序,并收到以下消息:

代码语言:javascript
运行
复制
(venv)****:*** ***$ python runserver.py 
Traceback (most recent call last):
  File "runserver.py", line 2, in <module>
    from weirdcanada import app
  File "/Users/****/****/weirdcanada/weirdcanada/__init__.py", line 3, in <module>
    import weirdcanada.views
  File "/Users/****/****/weirdcanada/weirdcanada/views.py", line 18, in <module>
    from flaskext.principal import AnonymousIdentity
ImportError: No module named flaskext.principal

然后我尝试了pip install flask-principal,在安装它之后,我重新运行了应用程序,并收到了同样的错误。我在虚拟环境中检查了site-packages,并安装了flask-principal

我的问题:

  1. 我是否误解了虚拟环境的意义?我应该能够复制一个虚拟环境,就像我有?我认为一致性和可移植性是主要的特点。
  2. 我怎么才能解决这个问题?

谢谢你的帮忙!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-07 17:42:10

我很肯定,改变这句话:

代码语言:javascript
运行
复制
    from flaskext.principal

代码语言:javascript
运行
复制
    from flask.ext.principal

应该行得通。

我的系统上安装了3个虚拟环境(MacOSX10.6+ Python2.7)。我创建了一个新的virtualenv,突然,在其他虚拟环境中运行良好的代码在这里无法工作,在这种情况下,flaskext.wtf是罪魁祸首。

我检查了两种虚拟主机中的烧瓶及其扩展版本,它们是完全相同的,所以版本问题也是没有问题的。

这是没有道理的,为什么这应该发生,但无论如何,尝试这个和回复。

票数 2
EN

Stack Overflow用户

发布于 2012-07-07 16:40:22

我不确定,但是您是在调用系统范围的python安装,还是调用虚拟环境中的python二进制文件?一个虚拟环境显然会有自己的python二进制解释器,所有的包都应该使用这个二进制文件来安装。也就是说,应该在/usr/bin/或其他地方有一个系统范围的python二进制文件,另一个在/var/www/myapp/env/bin/或类似的地方。这就是需要在虚拟环境中使用的应用程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11375557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档