一个基本的应用程序,有一个库集合,可以使google应用程序引擎的开发更容易。

substrate的Python项目详细描述


基板是一个基础应用程序和一组用于制作 Google App Engine python开发更容易。它包括一个带有管理功能的基本应用程序 脚本,测试已经设置,一组公共帮助函数 (agar)和序列化库(restler)。它还附带 像webapp2pytz这样的公共库准备就绪。

基板基于Google App Engine python的最佳实践 与许多用户一起开发几个真实的应用程序。

我们厌倦了看到应用引擎框架不受支持。为了 因此,基底不是框架。它是一个基地 具有一组库和帮助程序的应用程序。不多,不少。

安装

要安装基板,请运行:

$ easy_install substrate

要将基板安装更新到最新版本:

$ easy_install --upgrade substrate

要手动安装或更新,download the PyPI package, (或者要保持出血边缘,克隆substrate repository)并运行:

$ python setup.py install

创建新应用程序

要创建新应用程序,请运行:

$ substrate new your-app-id

这将创建一个新目录your-app-id,并解压基底 它的应用程序库。app.yaml中的应用程序名将是 设置为your-app-id

或者,如果你觉得安装一个脚本来完成这项工作很乏味,那么 可以克隆substrate repository并将app目录复制到 创建应用程序。

升级现有的应用程序

如果你有一个现有的应用程序,你可以把它升级到最新的 通过更新基底包(请参见Installation)并运行:

$ substrate update ~/development/your-app-id

其中~/development/your-app-id是应用程序目录 (包含app.yaml文件的文件)进行升级。 (例如,可以使用.在当前目录中运行此命令)

此命令不会触及应用程序的任何文件。只有 local/substratelib/substrate目录中的“基片文件” ^应用程序目录中的{tt10}$和env_setup.py将是 覆盖。可以将新文件添加到local/usrlib/usr,但不能 编辑现有的“基板文件”或您的更改将丢失时升级。

管理控制台

manage.py是应用程序的管理控制台。它可以调用几个命令。

$ ./manage.py shell

对本地应用程序运行shell(如果可用,则使用iPython)。

$ ./manage.py rshell

在google应用程序上对应用程序运行远程shell 引擎。指定不同于 app.yaml,使用-A。如果远程API终结点不在 默认位置,可以将路径作为参数传递。

$ ./manage.py test

运行应用程序的测试。任何附加参数都将传递给unitetest2 discover命令:

$ ./manage.py test --help

Usage: unit2 discover [options]

Options:
  -h, --help            show this help message and exit
  -v, --verbose         Verbose output
  -f, --failfast        Stop on first fail or error
  -c, --catch           Catch ctrl-C and display results so far
  -b, --buffer          Buffer stdout and stderr during tests
  -s START, --start-directory=START
                        Directory to start discovery ('.' default)
  -p PATTERN, --pattern=PATTERN
                        Pattern to match tests ('test*.py' default)
  -t TOP, --top-level-directory=TOP
                        Top level directory of project (defaults to start
                        directory)

添加您自己的命令

manage.py将在 local/usr/manage/substrate_manage_usr/commands目录为 命令。

向应用程序添加新库

基板将其库存储在lib/substratelocal/substrate/lib(对于不应部署到的库 谷歌应用引擎)。不要将新库作为 它们在升级时被删除并重新复制。

用户库可以放在lib/usrlocal/usr/lib。这些路径由添加到sys.pathenv_setup.setup

测试

如上所述,manage.py有一个test命令。这一切都结束了 在应用程序的tests目录中使用 unittest2。基底应用程序中包含一个简单的“hello “World”测试,您可以运行该测试来验证您的安装。它是 位于tests/handlers/test_main.py

基板包括位于agar.test中的测试助手 包裹。agar.test使用google.appengine.ext.testbed设置 每次测试运行前,google app engine环境都会更新。主要是 与旧的gaetestbed项目兼容的api,以及新的添加。

许可证

基质主要是其他物质的包装R库,它们有 拥有许可证。基板中的原始代码在MIT license下面。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在JScrollPane标题中禁用鼠标滚轮滚动?   java如何为篮球计分器应用程序存储包括球队名称在内的比赛分数?   java如何使用ADT接口实例化列表   JavaCV抓取帧方法延迟并返回旧帧   java在上传文件时处理网络问题   java如何创建2d阵列的克隆?   关于XMLGregorianCalendar的java信息   java XmlUnit在比较XML文件时忽略元素的顺序   java如何最好地检测无意义的文本?   克隆如何制作java扫描仪的副本?   验证Java中空值的BigDecimal数据类型   java字符串数组中的字数   java JavaFX:如何选择平铺并添加数字和边框线?   java更改jtable中从jar文件获取的特定行的颜色   正则表达式Java字符串。拆分:将\\W用作非单词分隔符时出现问题   当内存损坏时,Java中的同一引用/实例变量会发生什么变化?   java无法在Javadoc注释中链接到JDK10