为了在repo上运行flask示例,我克隆了最新的稳定版本,创建一个虚拟环境,激活它,pip安装flask,并尝试运行flask .py。下面的脚本执行这个序列。
#!/bin/bash
NEWROOT=${HOME}/flask
mkdir $NEWROOT
git clone https://github.com/mitsuhiko/flask.git $NEWROOT/repo
virtualenv $NEWROOT/venv
source $NEWROOT/venv/bin/activate
pip install flask
cd $NEWROOT/repo/examples/flaskr/
python flaskr.py
最后一行
失败Traceback (most recent call last):
File "flaskr.py", line 48, in <module>
@app.cli.command('initdb')
AttributeError: 'Flask' object has no attribute 'cli'
我错过了什么?
在这种情况下,我也不明白:如果我不运行"pip安装flask",我得到
Traceback (most recent call last):
File "flaskr.py", line 15, in <module>
from flask import Flask, request, session, g, redirect, url_for, abort,
ImportError: No module named flask
如果我这样做,我得到之前的错误。因此,"pip install flask"似乎确实安装了flask,但我没有在新创建的${HOME}/flask/venv中看到flask(甚至没有作为符号链接)。flask安装在哪里?
Python 2.7.10 (from MacPorts)皮普1.5.6;OS X 10.9.5
app.cli
是flask的v1.0分支中的一个特性,而不是在主要的0.10分支中,后者是默认情况下从pip获得的稳定分支。要么使用pip安装v1.0,要么删除这部分代码。