SAE下创建一个django项目
2014-06-30 20:23
232 查看
最近准备使用SAE作为django的服务器,由于SAE目前不支持django1.6,因此记录下搭建django1.6的详细过程
1、在SAE中创建APP2、将SVN空间克隆到本机上(使用SAE自带的上传发现总是会有问题,并且为了代码控制还是选择了直接使用SVN)
svn co <app_svn_url>
3、克隆完仓库后会有如下目录:
app_name -1(version) --index.wsgi --config.yaml
4、创建django项目
(1)创建django项目,在版本目录1下执行
django-admin.py startproject mysite
(2)修改版本目录1下的config.yaml(为了制定是django项目,以及django版本),修改后的config.yaml如下:
name: app_name version: 1 libraries: - name: "django" version: "1.6"
(3)修改版本目录1下的index.wsgi,默认的index.wsgi指向的是一个基本的python项目,要想要指向django项目还需要修改,修改后如下:
import os
import sys
root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root, 'site-packages'))
import sys
import sae
sys.path.append("mysite/")
from mysite import wsgi
application = sae.create_wsgi_app(wsgi.application)
注意:由于index.wsgi文件与要使用的django项目中的wsgi.py文件不在同一级目录中,因此使用相对路径定位wsgi.py文件,./mysite是进入django的主目录,目录下有manage.py文件和mysite文件夹,而wsgi.py文件在mysite文件夹中。
(4)修改mysite/mysite/wsgi.py,使packages中的django1.6得到引入
import os
import sys
root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root, '..', 'site-packages'))
# We defer to a DJANGO_SETTINGS_MODULE already in the environment. This breaks
# if running multiple sites in the same mod_wsgi process. To fix this, use
# mod_wsgi daemon mode with each site in its own daemon process, or use
# os.environ["DJANGO_SETTINGS_MODULE"] = "mysite.settings"
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)
(5)一切配置完毕,运行会发现错误,因为SAE目前并没有django1.6,因此需要开发者自己上传django1.6的依赖包,做法如下:
(a)在版本目录1下创建文件夹site-packages(用来存放django环境)
(b)找到系统中python目录下(/Library/Python)的library/site-packages,可以看见django文件夹,将文件夹整个复制到site-packages目录下
(c)执行svn同步命令
svn add 1/mysite svn add 1/site-packages svn commit -m "first time"
相关文章推荐
- django创建一个项目
- 1、创建一个django项目
- 1、创建一个django项目
- Django 从0开始创建一个项目
- 1、创建一个django项目
- django开发环境搭建和创建一个简单的django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 创建一个简单的django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目
- 1、创建一个django项目