在instruction之后,我尝试运行一个flask-admin wysiwyg的示例,如下所示,直到最后一步运行python examples/wyswyg/app.py
克隆存储库:
git clone https://github.com/mrjoes/flask-admin.git
cd flask-admin
创建并激活虚拟环境:
virtualenv env
source env/bin/activate
安装要求:
pip install -r 'examples/wysiwyg/requirements.txt'
运行应用程序:
python examples/wysiwyg/app.py
在第4步,我收到了错误
Traceback (most recent call last):
File "examples/wysiwyg/app.py", line 2, in <module>
from flask.ext.sqlalchemy import SQLAlchemy
ImportError: No module named ext.sqlalchemy
实例/所见即所得/ requirements.txt
Flask
Flask-Admin
Flask-SQLAlchemy
实例/所见即所得/ app.py
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from wtforms import fields, widgets
from flask.ext import admin
from flask.ext.admin.contrib import sqla
# Create application
app = Flask(__name__)
# Create dummy secrey key so we can use sessions
app.config['SECRET_KEY'] = '123456790'
# Create in-memory database
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///sample_db.sqlite'
app.config['SQLALCHEMY_ECHO'] = True
db = SQLAlchemy(app)
# Define wtforms widget and field
class CKTextAreaWidget(widgets.TextArea):
def __call__(self, field, **kwargs):
kwargs.setdefault('class_', 'ckeditor')
return super(CKTextAreaWidget, self).__call__(field, **kwargs)
class CKTextAreaField(fields.TextAreaField):
widget = CKTextAreaWidget()
# Model
class Page(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(64))
text = db.Column(db.UnicodeText)
def __unicode__(self):
return self.name
# Customized admin interface
class PageAdmin(sqla.ModelView):
form_overrides = dict(text=CKTextAreaField)
create_template = 'create.html'
edit_template = 'edit.html'
# Flask views
@app.route('/')
def index():
return '<a href="/admin/">Click me to get to Admin!</a>'
if __name__ == '__main__':
# Create admin
admin = admin.Admin(app, name="Example: WYSIWYG")
# Add views
admin.add_view(PageAdmin(Page, db.session))
# Create DB
db.create_all()
# Start app
app.run(debug=True)
它有什么问题?我需要安装哪些要求才能使其正常运行?感谢。