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

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

70498e63693ad6b100b1bb2ed78e5251.png

选择典型安装

f2843303c433e70ab4ca1e9c8fbaa98b.png

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

Center

然后输数据管理员password:

39d3fa9f4d4077647e947cd0aeeaafc5.png

最后是执行服务。

Center

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

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

fc248cbb2f3664666964cb2de48bc975.png

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

21c2d4a1e5858eb842aeaae636a93637.png

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

Center

OK。这样我们就建立了一个空的数据库了,我先不着急在这里建表和表的关系。

我们打算使用Django的模型的方式来建立:

首先我们改动一下

setting.py,好让Django认识我们新建立的数据库:

ADMINS = (

('hemeng80', 'hemeng80@126.com'),

)

MANAGERS = ADMINS

from os import environ

debug = 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.const

db_name = sae.const.MYSQL_DB

name = sae.const.MYSQL_USER

pwd = sae.const.MYSQL_PASS

host = sae.const.MYSQL_HOST

port = 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的基础。

眼下我们的文件夹结构是这种:

f8b0dcf24eff760a63be67075b32b305.png

接下来我们来

编辑 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

df76fd46ba248572a02c1e63a653783c.png

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

87ab38c9128a57a9ce37ab6bfd1bff10.png

假设我们复制粘贴的话,这里面有一点问题。当中语句长的换行了。会运行不通过的,我们改动一下即可了:

Center

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

a53c5904edd1a8b0a5dfaf11ba1700d9.png

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

既然我们在sae中开发。那么以下我就来看看怎样在sae中创建一个Mysql的数据库。加入表的。找到sae的Mysql服务。点击初始化:

eca6918498dfcb46983f15166c17d6a1.png

然后管理Mysql:

6808d681140afd889cb59d263743cc29.png

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

fa49a797bbf965fc7b733117fc72c4cb.png

这样我们就在本地和sae中创建了同样的表,并加入了响应的app,下一步就是怎样对这个表进行最主要的操作了。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值