在GoogleAppEngine/Python下使用Django的方法

环境

    • Mac

 

    • Python2.7

 

    Google App Engine SDK for Python

在拥有这个设备的环境中进行工作。

创建Django应用程序

首先,我们创建一个项目。
我们将其命名为gaedjango。

如果使用SDK中包含的django,将如下所示。
对于其他环境,请相应地进行修改。

$ export PYTHONPATH='/usr/local/google_appengine/lib/django-1.5/'
$ /usr/local/google_appengine/lib/django-1.5/django/bin/django-admin.py startproject gaedjangoapp

项目将在gaedjangoapp目录中创建。

创建app.yaml文件

使用app.yaml文件来配置GoogleAppEngine应用程序的设置是必需的。
使用app.yaml文件对Python应用程序进行配置。

application: gaedjangoapp
version: 1
runtime: python27
api_version: 1
threadsafe: yes

libraries:
- name: django
  version: "1.5"

builtins:
- django_wsgi: on

appengine_config.py 的释义.

使用SDK的Django时需要设置PYTHONPATH。

在Django1.5中,还需要设置DJANGO_SETTINGS_MODULE。

# -*- coding: utf-8 -*-
import os
import sys

if os.environ.get('SERVER_SOFTWARE','').startswith('Dev'):
    sys.path.append('/usr/local/google_appengine/lib/django-1.5/')

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "gaedjangoapp.settings")

启动开发服务器

一般情况下,Django应用中

$ python manage.py runserver

我将启动开发服务器,
但由于这次是在GoogleAppEngine上,

$ dev_appserver.py .

启动。

在这种状态下,访问http://localhost:8080,将显示”它起作用了!”和初始状态的页面。

你好,创建Hello应用程序。

我要创建一个显示”HelloWorld”的应用程序。

$ python manage.py startapp hello

在”hello”目录下创建一个空的应用程序。

接下来,将hello/view.py文件修改为以下内容。

# -*- coding:utf-8 -*-

from django.http import HttpResponse
def index(request):
    return HttpResponse("Hello, world.")

接下来,我们需要进行urls.py的设置。

from django.conf.urls import patterns, include, url

urlpatterns = patterns('',
    (r'^$', 'gaedjangoapp.hello.views.index'),
)

最后,将应用程序添加到settings.py文件中。

INSTALLED_APPS = (
    ~~~~~
    # Uncomment the next line to enable the admin:
    # 'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'hello',
)

在这种状态下,当访问http://localhost:8080时,
会显示”你好,世界”。

bannerAds