码迷,mamicode.com
首页 > 其他好文 > 详细

使用新浪SAE部署Django1.6

时间:2015-02-10 21:35:32      阅读:4108      评论:0      收藏:0      [点我收藏+]

标签:

        第一步:注册新浪SAE账号,下载TortoiseSVN。

        第二步:创建新应用。

                      注册应用名称,注册二级域名,开发语言选择Python2.7版本,然后进入应用管理界面,第一件事先初始化Mysql。

                      然后点击代码管理,创建一个版本,版本号为1,创建成功之后可以看到类似的信息。

技术分享 

第三步:使用SVN部署代码。

              首先在合适的位置创建一个svn文件夹,比如 E:\svn\。

              然后,在svn下面再创建一个文件夹,名字是在创建应用时填在二级域名里的名字,如pylabsite。

              鼠标右击文件夹pylabsite,选择SVN  Checkout,填写URL,其他默认,点击OK,之后填写注册邮箱和密码,填写时选上save authentication,没悬念。

技术分享

                     完成之后在pylabsite文件夹里会多出2个文件夹,1和.svn,.svn里的东西不用管,重点看1,刚检出来的时候 1 目录下只有config.yaml和index.wsgi两个文件,然后将本地项目pylabsite复制到1文件夹里,由于SAE最多支持Django1.4版本,这里要把python安装位置(例如C:\Python27\Lib\site-packages)的Django包拷贝过来,新建一个site-packages文件夹,放在里面,文件目录结构如下:

技术分享

                       本地文件是这样的:

技术分享

version: 1

                       然后修改config.yaml和index.wsgi这两个文件。

#-- config.yaml -- #

name: pylabsite
version: 1

libraries:
- name:"django"
version:"1.6"


handlers:
- url: /static

 

#-- index.wsgi --#

import os
import sys

root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root, ‘.‘, ‘site-packages‘))
os.environ.setdefault("DJANGO_SETTINGS_MODULE" , "pylabsite.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

里的格式很重要,比如- name之间有空格,没留空格就会出错,”pylabsite.settings”是我自己的项目名,灵活改动。

 

1/pylabsite/wsgi.py修改如下:

import os
import sys

root = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(root,‘..‘,‘site-packages‘))
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "pylabsite.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

 

然后1/pylabsite/settings.py修改:

import os
import os.path
from os import environ

debug = not environ.get("APP_NAME","")

if debug:
MYSQL_DB = ‘pylabsite‘
MYSQL_USER = ‘admin‘
MYSQL_PASS = ‘111‘
MYSQL_HOST_M = ‘127.0.0.1‘
MYSQL_HOST_S = ‘127.0.0.1‘
MYSQL_PORT = ‘3306‘
else:
import sae.const
MYSQL_DB = sae.const.MYSQL_DB
MYSQL_USER = sae.const.MYSQL_USER
MYSQL_PASS = sae.const.MYSQL_PASS
MYSQL_HOST_M = sae.const.MYSQL_HOST
MYSQL_HOST_S = sae.const.MYSQL_HOST_S
MYSQL_PORT = sae.const.MYSQL_PORT

DEBUG = False
TEMPLATE_DEBUG = False

DATABASES = {
‘default‘: {
‘ENGINE‘: ‘django.db.backends.mysql‘,
‘NAME‘: MYSQL_DB,
‘USER‘: MYSQL_USER,
‘PASSWORD‘: MYSQL_PASS,
‘HOST‘: MYSQL_HOST_M,
‘PORT‘: MYSQL_PORT,
}
}

DEFAULT_CHARSET=‘utf-8‘

ALLOWED_HOSTS = [
‘.sinaapp.com‘,
]

 

 

第四步:上传

               将所有要修改的东西修改完,就可以通过svn上传到SAE了,操作方法,右键pylabsite,选择SVN Commit…

               Django包有个十几M,不过上传速度很慢,这个过程可以休息会。

 

第五步:配置Mysql

              以上配置完成了,现在数据库还是空的,有一种方法是在本地部署SAE环境然后 python manage.py syncdb 同步到服务器,不过这样搞很折腾。

              第二种方法是在本地执行 python manage.py syncdb 然后从本地Mysql导出SQL语句文件,然后在SAE的Mysql运行SQL语句,我这里是用 Navicat for MySQL 导出的SQL语句文件,很方便。

 

技术分享

 

                这里选择执行SQL语句,也可以直接导入SQL文本,整体来说,配置数据库没悬念。

                然后就可以访问 yourAppName.sinaapp.com 来看我们的劳动成果了。

使用新浪SAE部署Django1.6

标签:

原文地址:http://www.cnblogs.com/pylab/p/4284857.html

(1)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!