问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么把django部署到sae

发布网友 发布时间:2022-04-07 17:27

我来回答

1个回答

热心网友 时间:2022-04-07 18:57

第一步:注册新浪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文本,整体来说,配置数据库没悬念。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么是Medical Literature Analysis and Retrieval System (NLM)的缩 ... 医学工作者的因特网内容简介 2002年的一篇文章英文摘要被《医学文献联机数据库》(MEDLINE)收录,是否... 医学器具medline啥意思 民国市与县的关系是怎样的,市与县分别又是什么? 历代兵制中国民国兵制 冰箱运行时有水流声怎么回事? ud牛郎眼影真假判断 爆闪/没有平替❌ 牛郎眼影真假鉴别方法 鉴别❗️衰败城市牛郎眼影真假,粉质肉眼差距 吃生的花生真的养胃吗?有什么依据? 昆明建行房贷组合贷提前还款可以缩短时间 公积金充还组合贷款,可以先充还商业贷款部分吗 银行卡里没钱还可不可以在提款机上取钱 zoom是什么呀? 求一个可以将很多个手机设备投影到电脑屏幕上的软件,要搞一个汉字大赛... 中国银行信用卡 可以在ATM取款机上进行取现金吗,利息怎么算? 如果我有透支卡的话,怎么样才透支,在提款机上可以吗? 银行卡怎么透支 直接去提款机可以提钱吗 zoom软件连接电视机开会是不是很麻烦 建行组合贷款提前还款可以先还商业贷款吗 信用卡可以在取款机透支取现吗? 建设银行组合贷款提前还贷可以先提前还商贷吗? 如何将手机上面WPS的文件投屏到zoom会议? 小米电视怎么下载zoom? 手机Zoom可以投屏到台式电脑上吗 VIDDAA-5zoom怎么投屏? zoom如何投屏报表 zoom投屏到电视上怎么没有声音 透支卡能在自动取款机上取钱吗? 普通人买房子需要多久? 怎样快速买套房? 如何最快买房子 买房子是人生大事,房子是开盘就买好还是等快建好再买? 怎么样才能更快的买上房子和车子,怎么样才能最快的有钱? 二类卡限额了工资还会打进去吗 一斤芸豆多少颗 一斤干红芸豆煮熟后能有几斤? 一斤干红芸豆煮好后能有几斤? 芸豆多少钱一斤 如何查看一加手机的后台程序? 我的联想G400怎么没有可用的无线网卡啊? 白芸豆一盒多少钱 现在是买房子的最好时机吗? 900颗白芸豆有多少斤 联想笔记本G400右下角没有无线网络连接 适配器没有无线网络选项 是买房子还是门面增值快? 今日芸豆价格? 芸豆的热量是多少? 我去年办一张中国银行卡,今年进厂又给我办了张二类卡,二类卡对发工资有影响吗?