• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

在SAE搭建Python+Django+MySQL(基于Windows)_MySQL

mysql 搞代码 4年前 (2022-01-09) 28次浏览 已收录 0个评论

pythonDjango

为了与时俱进,工作闲余开始研究Python,刚一接触就被Python这“优雅”的语法吸引住!后来接触到了Django,虽然还没有太深入的研究,但对这种新概念的WEB开发很感兴趣,决定尝试用它代替Java开发小的后台程序,边用边学吧!

注:本篇只介绍基础搭建过程,不负责讲解,因为刚接触Python我也不懂!

一、SAE使用的Python环境版本

Python2.7
Django1.27 / 1.4 / 1.5
本地版本要确定好,需要用到其他的预装模块也要确定好。
(我一开始使用了高版本的Python和Django,结果出现了一大堆莫名其妙的错误。)

二、SAE注册、配置

注册、新建应用略,新建完成之后在“代码管理”中创建一个代码版本,SAE允许有多个版本的代码存在,可以互相切换。
SAE通过SVN来管理Python源代码,页面的最下面有源代码的SVN地址,是“https://svn.sinaapp.com/”这样的格式,SVN账户密码分别为安全邮箱、安全密码

SVN客户端下载地址http://tortoisesvn.net/downloads.html

根目录是以代码版本为区分,应该只有一个标号为“1”的文件夹,其中只有:config.yaml,index.wsgi两个文件。

在“1”文件夹下创建Django项目,命令行中输入:

django-admin.py startproject

这里会产生两级以你APP命名的路径,将子目录及manage.py拷贝出来,变为一级目录
此时的根目录有config.yaml、index.wsgi、manage.py、文件夹
文件夹中有__init__.py、setting.py、urls.py、wsgi.py

三、修改config.yaml、index.wsgi的内容:

config.yaml:

name: version: 1libraries: - name: "django"   version: "1.5"#我使用的是Django1.5

index.wsgi:

import os import django.core.handlers.wsgiimport saeos.environ['DJANGO_SETTINGS_MODULE'] = '.settings'application = sae.create_wsgi_app(django.core.handlers.wsgi.WSGIHandler())

四、调试Django

建议使用pycharm作为IDE来开发,非常方便。

下载地址:http://www.jetbrains.com/pycharm/

安装SAE在本机的模拟环境。

下载地址:https://github.com/sinacloud/sae-python-dev-guide.git

在dev_server中执行python setup.py install

如果出现“No module name setuptools”,说明缺本文来源gaodai$ma#com搞$$代**码)网@少setuptools

下载地址:https://bootstrap.pypa.io/ez_setup.py

把它保存下来并执行以下,它会自动安装。

修改setting.py中的数据库链接,添加并修改如下代码:

import os.pathfrom os import environdebug = not environ.get("APP_NAME", "")if debug:#LOCAL 当代码运行在本地的时候,链接本地数据库,自行配置    MYSQL_DB = 'app_saepy'    MYSQL_USER = 'root'    MYSQL_PASS = 'admin'    MYSQL_HOST_M = '127.0.0.1'    MYSQL_HOST_S = '127.0.0.1'    MYSQL_PORT = '3306'else:#SAE 当代码运行在云平台的时候,链接云数据库,链接用的参数都在sae.const里面    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_PORTDATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': MYSQL_DB,        'USER': MYSQL_USER,        'PASSWORD': MYSQL_PASS,        'HOST': MYSQL_HOST_M,        'PORT': MYSQL_PORT,    }}

为了测试我们开放Django内置的admin,修改urls.py和setting.py。

在本地通过命令启动服务,或者通过PyCharm启动
manage.py runserver 8000
应该可以通过localhost:8000来访问Django程序了。

注意SAE的MySQL貌似出于安全考虑,不允许用Navicat之类的工具访问。使用syncdb命令同步SAE的数据库也比较麻烦,解决方案一般是在本地用syncdb命令,然后将本地数据库转存为SQL文件,再在SAE的MySQL上执行,这样会方便很多。(使用SAE的MySQL之前,记得需要在“服务管理”中初始化数据库。)

通过SVN上传已经本地配置好的Django项目,不出意外.sinaapp.com/admin/应该已经可以访问,但是管理界面是处于没有没有CSS的状态。这是Django找不到admin的静态文件所致,有很多种解决方式,在官方文档中有说明,比较简单的方式可以把admin所用的静态文件拷贝到”1″下面(/django/contrib/admin/static下的admin文件夹),通过SVN上传之后就可以了。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:在SAE搭建Python+Django+MySQL(基于Windows)_MySQL

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址