django与google应用引擎的集成
djangae的Python项目详细描述
姜凯
在google app engine上运行django的最佳方法。
djangae(djan gee)是一个django应用程序,允许您在google app engine上运行django应用程序,包括(如果您 想要)使用django的模型和app engine数据存储作为底层数据库。
:地球非洲 :章鱼:GitHub :闭式书本:Docs :Speech_u气球:Gitter :半身像轮廓:{a7}
注:djangae正在大力开发中,稳定性得不到保证。请参阅1.0 release changes issue以了解djangae 1.0版本的进度。
功能
- 一个wsgi中间件,它提供了一种干净的方式,通过这种方式可以将django应用程序插入到应用程序引擎中。
- 允许app engine的延迟任务和mapreduce处理程序在同一环境中运行的钩子。
- 能够将数据存储用作django模型的数据库。有关详细信息,请参见数据库后端。 你也可以使用app engine的ndb,或者你可以使用google cloud sql(通过标准的django mysql后端)而不是 或者沿着数据存储区。或者全部使用3个!
djangae.contrib.gauth
它提供用户模型(具体的和可扩展的抽象版本)、身份验证后端和中间件;它允许您使用app引擎内置的google帐户身份验证对用户进行身份验证,还允许您在数据存储上使用django的权限系统(即,不被多对多捕获关系)。- 一个
runserver
命令,它启动应用程序引擎sdk为您的应用程序提供服务(同时仍在使用django的代码重载)。 - 能够在本地或远程应用程序引擎数据存储上运行管理命令。
- 正确设置环境/数据库的
shell
命令。(注意,我们应该支持任何 自定义命令,请参见todo.md)。
文档
https://djangae.readthedocs.io/
支持的django版本
其目的始终是支持当前支持的django版本,尽管旧版本可以工作。目前 支持django 1.8、1.9、1.10和1.11。
安装
见https://djangae.readthedocs.io/en/latest/installation/
对djangae的贡献
djangae是积极开发和维护的,所以如果您想为代码库做贡献,这里是如何开始的。
开始开发
- 首先,前往our Github page并分叉存储库以拥有自己的副本。
- 在本地克隆它以开始设置开发环境
- 运行所有测试以确保本地版本正常工作:
./runtests.sh
。这也将安装所有必要的依赖项。
选择问题并发送拉取请求
如果你发现了一个你想修复的缺陷,最好从 由adding an issue关闭。 这将使我们能够验证你的问题是有效的,并提出解决的办法。 你不会浪费时间的。
有关创建拉取请求的帮助,请查看Github documentation。
代码样式
代码样式应遵循PEP-8,松散的行长度为100个字符。
需要帮助吗?
在djangae-users邮件列表上联系我们。
拉取请求要求
要合并拉取请求,应满足以下要求:
- 添加或更新包含新代码或更改代码的测试
- 应更新或添加相关文档
- 行项目应添加到changelog.md中,除非更改确实不相关
运行测试
运行测试时,只需运行:
$ ./runtests.sh
在第一次运行时,这将下载app engine sdk,pip在本地安装一堆东西(到一个文件夹中,不需要virtualenv),下载django测试并运行它们。后续运行将只运行测试。如果要在特定的django版本上运行测试,可以执行以下操作来切换已安装的版本:
^{公关二}$目前的默认值是1.8。Travisci目前运行于1.8、1.9、1.10和1.11。
如果要在特定的应用程序引擎sdk版本上运行测试,则可以通过执行以下操作来切换已安装的版本:
$ SDK_VERSION=1.9.35 ./runtests.sh --install_sdk
注意,这也会重新安装依赖项,因此将django版本重置为默认的1.8。
您可以按常规方式运行特定的测试,方法是:
./runtests.sh some_app.SomeTestCase.some_test_method