SAE-Python-Django

目前SAE上预置了多个版本的Django,默认的版本为1.2.7,在本示例中我们使用1.4版本。

创建一个新的Python应用,检出SVN代码到本地目录并切换到应用目录。

创建一个Django project:mysite。

jaime@westeros:~/pythondemo$ django-admin.py startproject mysite

jaime@westeros:~/pythondemo$ ls mysite

manage.py  mysite/

重命名该project的根目录名为1,作为该应用的默认版本代码目录。

jaime@westeros:~/pythondemo$ mv mysite 1

在默认版本目录下创建应用配置文件config.yaml,在其中添加如下内容:

libraries:

- name: "django"

version: "1.4"

创建文件index.wsgi,内容如下

importsaefrommysiteimportwsgiapplication=sae.create_wsgi_app(wsgi.application)

最终目录结构如下

jaime@westeros:~/pythondemo$ ls 1

config.yaml index.wsgi manage.py mysite/

jaime@westeros:~/pythondemo/1$ ls 1/mysite

__init__.py settings.py  urls.py  views.py

部署代码,访问http://.sinaapp.com,就可看到Django的欢迎页面了。

按以上部署后,提示:

Traceback (most recent call last):

File "/usr/local/sae/python/lib/python2.7/site-packages/sae/__init__.py", line 18, in new_app

return app(environ, start_response)

File "/usr/local/sae/python/3rd/django-1.4/django/core/handlers/wsgi.py", line 219, in __call__

self.load_middleware()

File "/usr/local/sae/python/3rd/django-1.4/django/core/handlers/base.py", line 51, in load_middleware

raise exceptions.ImproperlyConfigured('Middleware module "%s" does not define a "%s" class' % (mw_module, mw_classname))

ImproperlyConfigured: Middleware module "django.contrib.auth.middleware" does not define a "SessionAuthenticationMiddleware" class


按 

https://github.com/sinacloud/sae-python-dev-guide/tree/master/examples/django/1.2.7

内容更改 index.wsgi  settings.py 文件

提示mysql数据库错误

去sae管理应用更新数据库配置,并选择xx引擎

提示:Error was: No module named mysql.base


'ENGINE': 'mysql'

改为

'ENGINE': 'django.db.backends.mysql'

注释掉了urls中的admin,可以正常运行。

你可能感兴趣的:(SAE-Python-Django)