sae mysql django_Python+Django+SAE系列教程12-----配置MySQL数据库_MySQL

pythonDjango

因为SAE上支持的是Mysql,首先我们要在本地配置一个Mysql的环境 ,我在网上找到MySQL-python-1.2.4b4.win32-py2.7.exe,并双击 安装

1405KM02921Z-1B07.jpg

选择典型安装

1405KM033K0-24047.jpg

安装结束后,会弹出配置数据库的界面 :

1405KM03L560-31224.jpg

然后输数据管理员密码:

1405KM0415620-4b01.jpg

最后是运行服务。

1405KM0443K0-52140.jpg

这个过程并不复杂,安装完成Mysql以后,系统会启动数据库服务,由于Mysql是用命令行控制的,想我这样懒的 人还是需要借助一个可视化 工具来管理,我选择MySQL-Front。

在网上找到MySQL_Front_Setup.1765185107.exe,双击安装就可以了,安装完打开软件:

1405KM04RQ0-Dc7.jpg

这时我们会看到已经有的几个数据库:

1405KM0520310-O449.jpg

我要开发程序首先,我们要建立一个数据库(右键 新建数据库),起名字为Mytestdb:

1405KM0553120-S528.jpg

OK,这样我们就建立了一个空的数据库了,我先不着急在这里建表和表的关系。我们打算使用Django的模型的方式来建立:

首先我们修改一下

setting.py,好让Django认识我们新建立的数据库:ADMINS = (('hemeng80', 'hemeng80@126.com'),)MANAGERS = ADMINSfrom os import environdebug = not environ.get("APP_NAME", "") if debug:#LOCAL db_name = "MyTestDB"name = "root"pwd = "123456"host = "127.0.0.1"port = "3306"else: #SAE import sae.constdb_name = sae.const.MYSQL_DB name = sae.const.MYSQL_USER pwd = sae.const.MYSQL_PASS host = sae.const.MYSQL_HOSTport = sae.const.MYSQL_PORT host_s = sae.const.MYSQL_HOST_S DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.'NAME': db_name,# Or path to database file if using sqlite3.'USER': name,# Not used with sqlite3.'PASSWORD': pwd,# Not used with sqlite3.'HOST': host,# Set to empty string for localhost. Not used with sqlite3.'PORT': port,# Set to empty string for default. Not used with sqlite3.}}上面的内容不需要多解释,你就会能明白,一种是在sae环境下的链接,一种是在本地的链接。

这时我们需要使用Django,生成一个模型,在命令行模式输入:

python manage.py startapp person

这个命令并没有输出什么,它只在 mysite 的目录里创建了一个 books 目录。 让我们来看看这个目录的内容:

person/

__init__.py

models.py

tests.py

views.py

这个目录包含了这个app的模型和视图。

使用你最喜欢的文本编辑器查看一下 models.py 和 views.py 文件的内容。 它们都是空的,除了 models.py 里有一个 import。这就是你Django app的基础。

目前我们的目录结构是这样的:

1405KM05921Z-940P.jpg

接下来我们来

编辑 person的models.py,来定义我们的数据模型:

models.py:from django.db import models# Create your models here.class ClassRoom(models.Model):name = models.CharField(max_length=30)tutor = models.CharField(max_length=30)class Student(models.Model):name = models.CharField(max_length=30)sex = models.CharField(max_length=5)age = models.IntegerField()state_province = models.CharField(max_length=30)qq = models.IntegerField()classroom = models.ForeignKey(ClassRoom)上面的数据模型比较简单,你一看就能明白,需要注意外键关系是这样建立的:classroom = models.ForeignKey(ClassRoom)为了让django认识我们新添加的App,还需要在setting.py中修改一些内容:INSTALLED_APPS = ('django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.sites','django.contrib.messages','django.contrib.staticfiles','person',# Uncomment the next line to enable the admin:# 'django.contrib.admin',# Uncomment the next line to enable admin documentation:# 'django.contrib.admindocs',)这时,我们可以进入命令行程序,来检查一下我们的app是否正确:

python manage.py validate

如果没有问题的话,我们就可以使用这个模型来建立数据库中的表和表的关系了 ,命令行进入我们之前建立好的路径,输入:

python manage.py sqlall person

1405KM0629E0-10L00.jpg

这样自动生成了,数据模型的建立表的SQl,语句,我们在mysql-front里面执行就可以自动创建数据库中的表了:

1405KM0C1X0-11C16.jpg

如果我们复制粘贴的话,这里面有一点问题,其中语句长的换行了,会执行不通过的,我们修改一下就行了:

1405KM0G0940-124W0.jpg

在打开数据库,刷新看看,是不是我们表都自动创建了?

1405KM0K1560-1363J.jpg

我们注意到Django自动创建了一个自增的主键!

既然我们在sae中开发,那么下面我就来看看如何在sae中创建一个Mysql的数据库,添加表的,找到sae的Mysql服务,点击初始化:

1405KM0M9E0-14GC.jpg

然后管理Mysql:

1405KM0QGZ-154511.jpg

在这个里面执行以下我们刚才复制的sql语句创建表 :

1405KM0TT40-1A437.jpg

这样我们就在本地和sae中创建了相同的表,并添加了响应的app,下一步就是如何对这个表进行最基本的操作了。

f68f2add0b68e4f9810432fce46917b7.png

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值