部署
checkout
现在 checkout 到本地 SAE 上的代码
新建一个文件夹,随便你方便的地方,我的叫 myapp,和我应用的名称一样
右击选择 SVN Checkout…
好,这样就将代码 checkout 到本地了,接下来你看到的文件树应该是这样的:
1 2 3 4 5
| --myapp |--.svn\ |--1\ |--config.yaml |--index.wsgi
|
创建工程
正式开始自己的代码,像往常一样创建 django project
1
| django-admin startproject myapp #myapp就是你的 SAE 上应用名称
|
接下来,你要把 project 中的文件放到文件夹 1\ 中,像这样:
1 2 3 4 5 6 7 8 9 10 11
| --myapp |--.svn\ |--1\ |--config.yaml |--index.wsgi |--manage.py |--myapp\ |--__init__.py |--settings.py |--urls.py |--wsgi.py
|
修改配置文件
修改 config.yaml
、index.wsgi
文件修改 config.yaml
、index.wsgi
文件如下:
–config.yaml:
1 2 3 4 5 6 7 8 9
| name: foolself version: 1 libraries: - name:"django" version:"1.8.4" handlers: - url: /static static_dir: static
|
–index.wsgi:
1 2 3 4
| import sae from foolself import wsgi application = sae.create_wsgi_app(wsgi.application)
|
接着修改 myapp 文件夹下的 wsgi.py 文件如下:
1 2 3 4 5 6 7 8
| 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", "myapp.settings") from django.core.wsgi import get_wsgi_application application = get_wsgi_application()
|
修改 myapp 文件下 setting.py 文件,添加下面内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| import os BASE_DIR = os.path.dirname(os.path.dirname(__file__)) import os.path from os import environ debug = not environ.get("APP_NAME", "") if debug: MYSQL_DB = 'foolself' MYSQL_USER = 'root' MYSQL_PASS = '1234' MYSQL_HOST_M = '' MYSQL_HOST_S = '' MYSQL_PORT = '' 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
|
要用MySQL数据库,修改 DATABASES 部分如下:
1 2 3 4 5 6 7 8 9
| DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': MYSQL_DB, 'USER': MYSQL_USER, 'PASSWORD': MYSQL_PASS, 'HOST': MYSQL_HOST_M, 'PORT': MYSQL_PORT, }
|
呵,这样整个配置就完成了,够费劲的。
好,现在把更高版本的 django 传到自己的应用中
在文件夹 1/
下创建文件夹 site-packages/
,将自己本地的 django 库复制到新建的文件夹下
像这样:
1 2 3 4
| --1\ |--site-packages\ |--django\ |--..
|
commit
最后,右击,选择svn commit,选择 ALL,OK,这样就将刚才添加、修改的代码同步到SAE上了
好,至此,你的 django 应用就部署完毕了,打开自己的网址 myapp.sinaapp.com\
你应该看到这个熟悉的网页了:
第一次在互联网上访问自己的网站还有点小激动呢 ↖(^ω^)↗