1

我已经安装了 virtualenv 以及烧瓶、werkzeug、jinja2 和 SQLAlchemy。我按照烧瓶网站上提到的教程进行操作,在执行烧瓶代码时遇到以下错误

 Traceback (most recent call last):
  File "hello.py", line 1, in ?
    from flask import Flask
  File "/root/myproject/env/lib/python2.4/site-packages/Flask-0.7dev_20110211-py2.4.egg/flask/__init__.py", line 18
    from .app import Flask, Request, Response
         ^

我的感觉是 virtualenv 包含 python 2.4,并且在烧瓶的文档中提到烧瓶支持 python 2.5。因此,也许这可能是问题所在,或者可能是其他问题。请帮我解决这个问题。

其次,我想知道获取最新的具有 Python 2.7 的 virtualenv 的过程或有关如何在 virtualenv 上安装它的任何提示。

我正在使用 CentOS

先感谢您

4

4 回答 4

3

import .module语法在 Python 2.5(相对导入)中引入。所以你必须为这个东西使用至少 2.5。

于 2011-02-13T11:00:16.860 回答
2

不知道你做了什么以及你的virtualenv有多老..但你通过以下方式制作自己的virtualenv:

% python -c "import urllib, os; os.mkdir('py-env'); \
     urllib.urlretrieve('http://goo.gl/D2RB', 'py-env/virtualenv.py')"
% python py-env/virtualenv.py --no-site-packages py-env
% source py-env/bin/activate
% pip install flask SQLAlchemy 

那应该工作。virtualenv 本身并不“包含 python”。你运行正确版本的python(不知道你的发行版上安装了什么)?

于 2011-02-11T14:08:28.337 回答
0

那么我们能否澄清当他们说“virtualenv 本身没有 python”时的意思?在创建 env 时查看相应的 bin/ 或 /lib 目录,或者在创建 virtualenv 时可以提供 -p 标志的事实如何? -p python2.7。像fear_matrix那样做,安装所需的python,然后用它“virtualenv -p python2.7”创建一个virtualenv。也许这在centos上有所不同,但我不这么认为。

于 2011-03-18T17:48:45.707 回答