`
obullxl
  • 浏览: 183234 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

如何在GAE中轻松使用Django框架

阅读更多

最近学习Python,把核心编程粗略的看了一遍,发现Python真的是很好很强大。

 

于是想做个小的应用练练手,到网上一搜,发现Django很好嘛,于是又看看Django,按照官网做了个简单的例子。

 

GAE限额提供了运行Python程序的环境,可惜是的,其WebApp框架不是很好用,要是使用Python开发Web应用却没有用Django,我觉得肯定是一大憾事。

 

下面介绍下如何在GAE中使用Django框架,原因事情就是这么简单的。

 

1、安装Python

 

按照GAE官网说法,目前GAE只支持Python 2.5的版本,虽然Python已经有3.1.2了,可惜为了GAE,还是下个2.5的吧。

 

由于http://www.python.org下载的SDK都是要自己编译的,在Windows下还真的不好弄,如果我用的是Linux环境就好了,呵呵。

 

幸好有个好网站,可以直接下载安装程序http://www.activestate.com/activepython/downloads,好心人还是很多的,先感谢一下这个好站点,先把它给收藏了。

 

2、安装Google AppEngine SDK

 

要在GAE中运行Python,下个GAE SDK也是应该的嘛。还有就是我们一般都是在本地运行写好的Python程序,当程序运行稳定后上传到GAE主机。国此为了在本地运行效果、环境等与GAE一样,所以还得下个GAE SDK http://code.google.com/intl/zh-CN/appengine/downloads.html,目前最新版本是1.3.7。

 

3、下载Django

 

其实GAE 1.3.7中已经包含了Django,不过是版本是0.96的,太旧了。虽然GAE SDK中包含了Django,但是GAE运行环境中(就是最后上传的Google免费限额运行的主机环境)中并不包含Django。其实我们完全可以把Django作为一个模块使用,不用依赖GAE的Django,所以还是用最新的,http://www.djangoproject.com/download/,目前最新是1.2.3。

 

注意:Django的官网安装方法其实是吓人的,我在Windows下试了几次都不是很管用,其实把Django-1.2.3.tar.gz解压后(我用的是7-Zip软件,解压了两次,一次是解压成Django-1.2.3.tar,第二才是Django-1.2.3目录),把Django-1.2.3目录下的django目录压缩成django.zip就行,我们的GAE程序就是使用该zip文件,当然也可以不用压缩,直接用目录也行的,压缩后程序更小,上传到GAE中也就更快了。

 

4、下载GAE Django Helper程序

 

GAE天生并没有集成Django的,为了在我们的程序中使用Django,我们还得用个帮助程序google-app-engine-django,http://code.google.com/p/google-app-engine-django/downloads/list,目录最新版本是r105的。

 

5、生成GAE+Django工程

 

把GAE Django Helper解压后发现,原来其目录结构和我们用Django生成的标准工程结构是多么的相似。

 

没错,该工程就是我们想要的工程,我们只要把第3步中的django.zip或是django目录放在该目录下,就大功告成了。

 

6、注意与技巧

 

Django安装:不要敲官网所示的那几个命令,其它Django根本不用安装,直接复制就行,哪里需要它,就把它放到哪里,包括python的site-packages也是一样的;

 

Eclipse插件:推荐使用pydev插件,可以生成Django、GAE等工程框架,我一般先用其生成一个工程,然后加上django.zip和GAE Django Helper内容;

 

GAE可视化布署:在第2步安装GAE SDK的launcher目录下,有个GoogleAppEngineLauncher.exe程序,它真的是好用极了,它可以帮助我们快速:启动、停止、查看后台、上传等操作,且全部都是可视化的,不需要命令。

 

附件:附件是我的一个GAE+Django的集成工程,我都是在它的基础上开发GAE程序的(复制一份,重命名一下,就可省去上面的3、4、5步)。

 

===========================================
如有批评、指教、疑惑,请:obullxl@163.com
祝大家使用JAVA愉快!
URL:http://hi.baidu.com/obullxl/blog/item/ac891446734e66076b63e5c7.html

 

7
0
分享到:
评论
3 楼 w11h22j33 2011-09-19  
很棒噢 
2 楼 liybrn 2010-12-18  
谢谢你的分享,按照你的介绍我部署好了,学习Django中。
1 楼 obullxl 2010-10-10  
由于appengine_django在导到eclipse工程后,有红叉,虽然对程序没有什么影响,但老是看着不爽,于是我修改一下main.py,把appengine_django也以zip的形式加入到程序中。
主要是在main.py中加入以下代码,以引入appengin_django.zip模块:
APP_DIR_PATH = os.path.abspath(os.path.dirname(__file__))
gae_django_zip_path = os.path.join(APP_DIR_PATH, 'appengine_django.zip')
sys.path.insert(1, gae_django_zip_path)


这样,程序中的两个模块(appengin_django,django)都以zip的形式加入了,呵呵。

相关推荐

    在GAE中使用django模板

    标题 "在GAE中使用django模板" 涉及到的知识点主要是在Google App Engine (GAE)上部署和使用Django模板系统。GAE是一个由Google提供的平台,允许开发者构建和运行web应用,而Django则是一个流行的Python web框架,它...

    利用DJANGO在GAE上实现小型网络爬虫

    【标题】:“利用DJANGO在GAE上实现小型网络爬虫” 在当今互联网时代,数据挖掘和信息获取变得越来越重要,而网络爬虫是实现这一目标的重要工具。Django,一个强大的Python Web框架,通常用于构建网站应用,但也...

    gae-django-cms-v2.01.zip

    在这个GAE-Django-CMS项目中,开发者已经将Django的框架与Google App Engine的环境进行了整合,创建了一个适合在GAE上运行的内容管理系统。CMS允许用户无需深入编程知识就能管理网站内容,包括文章、页面、媒体资源...

    google app engine 教程

    - **Web 框架**:GAE 支持使用 Django 等 Python Web 框架来构建复杂的 Web 应用程序。 - **模板引擎**:通过使用 Django 的模板引擎,可以方便地实现动态页面的渲染。 通过以上知识点的学习,开发者可以快速掌握 ...

    Google App Engine 帮助文档

    对于Python,GAE 支持使用 webapp2 和 Django 等框架。其他语言也有对应的推荐框架。 10. **文件系统** GAE 的文件系统是受限的,主要依赖于 Datastore 和 Blobstore 存储数据。开发者需适应这种非传统的文件操作...

    Developing with Google App Engine.rar

    支持HTTP/1.1协议,可以使用各种Web框架如Django(Python)和Spring(Java)。 3. **任务队列**:任务队列服务允许异步处理,确保后台任务的可靠执行,避免阻塞主线程。 4. **邮件服务**:内置的邮件API可以轻松发送...

    Repoze.BFG 技术手册

    - **安装依赖**:确保所有必要的依赖库都正确安装,并且能够在GAE环境中运行。 #### 三、创建首个Repoze.BFG应用 ##### 3.1 HelloWorld示例 本节将引导你通过命令式配置的方式创建一个简单的“Hello World”应用...

    PyPI 官网下载 | Tailbone-0.8.136.tar.gz

    它基于Google App Engine的Endpoints框架,但不仅仅局限于GAE,也可以用于其他Python Web框架,如Flask或Django。Tailbone的核心理念是简化API的开发,让开发者可以更专注于业务逻辑,而非底层的HTTP处理。 在...

    gaebusiness:Google App Engine 上业务层的微架构

    1. **服务隔离**:在GAE中,我们可以创建多个独立的服务(或称为模块),每个服务有自己的代码库、配置和版本管理。这使得服务之间可以独立部署和更新,避免因单个服务更新导致整个应用的不稳定。 2. **轻量级通信*...

    Python-gg-开源

    这种模式鼓励协作和创新,许多重要的技术和项目,如Linux操作系统、MySQL数据库、Django Web框架等,都是开源软件的典范。"Python-gg-开源"作为开源项目,意味着任何对Python和Web开发感兴趣的人都可以查看其代码,...

    google app engine

    自2008年发布以来,Google App Engine已经成为众多开发者的首选平台之一,支持多种编程语言,如Python、Java、Go等,以及各种框架,包括Django、Flask等。 #### 核心功能与特点 1. **自动扩展**:Google App ...

Global site tag (gtag.js) - Google Analytics