`
obullxl
  • 浏览: 182036 次
  • 性别: 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的形式加入了,呵呵。

相关推荐

Global site tag (gtag.js) - Google Analytics