我正在使用 Flask 上的 Python 在 Google App Engine 上构建和托管我的应用程序。现在我想使用 flask-security 扩展,并意识到在我的配置下没有太多资源可以开始,这让我有点惊讶,因为我认为这个堆栈应该很快就会通用。
在 Flask-Security 的快速入门页面上,提供了 SQLAlchemy、MongoDB 和 Peewee 的示例。但是,我找不到特别是 GAE-NDB 的样本。如果有人可以指出我是否可以在我的开发堆栈上使用flask-security,如果一些如何创建security
对象的示例如下面的SQLAlchemy示例代码,将不胜感激
db = SQLAlchemy(app)
class User(db.Model, UserMixin):
pass
# Setup Flask-Security
user_datastore = SQLAlchemyUserDatastore(db, User)
security = Security(app, user_datastore)
非常感谢!
更新和我的解决方法给那些有同样问题或疑问的人
GAE-NDB 不兼容,至少您必须使用烧瓶安全性做一些额外的工作。以下是来自烧瓶安全主页
此外,它假定您将使用通用库来进行数据库连接和模型定义。Flask-Security 支持以下开箱即用的 Flask 扩展以实现数据持久性:
- Flask-SQLAlchemy
- Flask-MongoEngine
- Flask-Peewee
我的最终解决方案是使用 mongodb 作为我的数据存储,它托管在 mongolab 上。他们有用于原型设计和开发的免费实例。