sae mysql django_基于SAE的Python+Django的入门实践

新浪SAE已经开始了对python的支持,支持django框架。

下面进入正题。

首先,我使用的是django + mysql组合,所以本文暂不涉及其他框架。

其次,本人菜鸟,如有可以改进的地方,请不吝赐教,万分感激。

第一步 申请

首先你要有个SAE账号,用新浪微博就可以注册。注册、登陆、然后直奔这里http://appstack.sinaapp.com/queue 去排队申请SAE Python。如果你已经拥有邀请码并可以添加python应用,请自觉忽略此段。排队,怎么查看是否开通?,等……

好了,现在,你已经开通了SAE Python,你已经可以创建应用,并且可以创建Python应用。

第二步 创建

1、来到你的SAE首页http://sae.sina.com.cn/?m=myapp,创建新应用,开发语言选择python:

5f01ec59fac3d02ea4364e0f71294bbc.png

2、回到应用列表,点击你的应用名,进入应用管理页面:

e422efa8b6f44812a11767af1d96b2d8.png

3、找到左侧栏->服务管理->MySQL:页面出现

f2c41cc9af07951902bcd90b68e4f35d.png

初始化mysql即可。

4、类似的做法,你可以将服务管理里列出的的服务都开启。

5、我们可以开始创建自己的第一个应用的第一个版本了:

(依然是左侧栏)-应用管理-代码管理,点击“通过这里创建一个版本”,版本号为1,创建。

创建成功就可以看到类似的信息:

76a32f661e22934cd76a32f79358bcaf.png

接下来要做的就是使用SVN部署你的代码了。

第三步 部署

注意!svn检出时的用户名是你的微博账号,但密码是安全密码!

2、检出代码文件夹至本地,会看到以版本号命名的文件夹,此处应该是1。

进入文件夹1,可以找到config.yaml、index.wsgi这个两个文件,用文本编辑器打开index.wsgi,删除所有内容,用下面的代码替代。

import os

import django.core.handlers.wsgi

import sae

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' # mysite替换为你的应用名

application = sae.create_wsgi_app(django.core.handlers.wsgi.WSGIHandler())

注意!别忘了将os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' 这一行中的mysite替换为你刚刚在SAE上建立的应用名!

并且,下文出现的所有mysite都要替换成你在SAE上的应用名!

3、如果你准备使用django提供的admin模块,需从django安装目录复制admin 的media目录到文件夹1内。

4、如果你已经建好了一个django项目,直接将文件夹(项目的文件夹名必须同SAE上建立的应用名相同)放到文件夹1下面。

如果尚未建立django项目,进入文件夹1,执行python django-admin.py startpreject mysite  命令(同样用SAE上建立的应用名代替mysite,下文不再提示)

到了这一步,无论如何都要确认,文件夹1下有你的django项目,即mysite文件夹。也就是确保文件夹1内可以看到:

index.wsgi config.yaml mysite(项目文件夹)

5、进入目录mysite,修改settings.py:

A、将下面的代码添加到头部

import os.path

from os import environ

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

if debug:

#LOCAL 本地调试用,便于导出数据库,根据本地MYSQL数据库填写下面参数

MYSQL_DB = 'mysite'

MYSQL_USER = 'root'

MYSQL_PASS = ''

MYSQL_HOST_M = '127.0.0.1'

MYSQL_HOST_S = '127.0.0.1'

MYSQL_PORT = '3306'

else:

#SAE

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

B、修改DATABASES 字段为:

DATABASES = {

'default': {

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

'NAME': MYSQL_DB,

'USER': MYSQL_USER,

'PASSWORD': MYSQL_PASS,

'HOST': MYSQL_HOST_M,

'PORT': MYSQL_PORT,

}

}

C、如果已经设置了自己的templates目录,在TEMPLATE_DIRS中添加字段

'/usr/local/sae/python/lib/python2.7/site-packages/django/contrib/admin/templates/admin',如下:

TEMPLATE_DIRS = (

'/usr/local/sae/python/lib/python2.7/site-packages/django/contrib/admin/templates/admin',

os.path.join(os.path.dirname(__file__), 'templates').replace('\\','/'),  # 已经将mysite目录下的tempalets目录设置为模板目录

)

第四步 导入数据库

1、本地进行mysql操作需要MySQL-python模块,

2、如果本地已经安装有mysql服务,或者又可以连接的mysql数据库,可以直接看下一条。

安装之后别忘了重启一下机器,双击桌面上的

728ca8d2275bfc1f2580dcad8ea15c3d.png

快捷方式,点击托盘上的小图标,点 起动所有服务,启动成功,图标变绿3bcb33021b6f8d12815a061db11d214f.png

再次单击托盘图标,点phpMyAdmin,就从浏览器打开了数据库管理器。然后点击页面顶部的 “数据库”

6a08d11ae4583923bd3474482c44dcc9.png

新建数据库

a0c35be4d4a86af8207833d1db3f7fde.png

创建完成后,左侧栏看到mysite已经被添加

f3cd4cf40cd75428b759288dc2f07799.png

点击mysite就打开了本地mysite数据库的管理页面。

3、修改mysite目录内的settings.py中的

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

if debug:

#LOCAL 本地调试用,便于导出数据库,根据本地MYSQL数据库填写下面参数

MYSQL_DB = 'mysite'

MYSQL_USER = 'root'

MYSQL_PASS = ''

MYSQL_HOST_M = '127.0.0.1'

MYSQL_HOST_S = '127.0.0.1'

MYSQL_PORT = '3306'

如果是按照2、中的步骤,此段无需修改。

如果你是使用已有数据库的人,应该很容易就能看出该怎么改。

4、进入mysite目录执行 python manage.py syncdb,完成之后我们将本地数据库导出:

进入本地mysite数据库的管理页面,点击顶部的导出-执行,输出sql文件。

将导出的数据库导入SAE中所建应用的远程MYSQL数据库:

进入SAE的应用管理页面->服务管理->MySQL->管理MySQL,进入SAE的mysql管理页面。点击顶部的导入->选择文件(刚才输出的sql文件)->执行

第五步 上传

把目录1内的所有文件都通过svn提交到sae上,mysite终于可以工作了!

我想你也不会忘了把settings.py中的DEBUG = True改为DEBUG = False吧

好吧,本文告一段落。

等深入学习之后再来丰富内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值