首先定义数据库的表名和字段
启动mysql数据库 bash mysql.server start
安装pymysql pip install pymysql
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。
在_init_.py文件中加入如下代码:
import pymysql
pymysql.install_as_MySQLdb()
新建数据库
mysql -u root -p 登录root
show databases 显示数据库
create database mysite 创建数据库
settings.py配置数据库:
1)django默认使用的是sqlite数据库
2)修改settings.py文件的DATABASES选项进行数据库的配置
3)设置想要使用的数据库。比如mysql
1
2
3
4
5
6
7
8
9
10
|
DATABASES = { 'default' : { 'ENGINE' : 'django.db.backends.mysql' , 'NAME' : 'mysite' , 'USER' : 'root' , 'PASSWORD' : '12345678' , 'HOST' : 'localhost' , 'PORT' : '3306' , } } |
创建app
一个项目中可以创建多个app
使用命令 python manage.py startapp myApp,后生成myApp目录以及相关文件。
admin.py 站点配置
models.py 定义模型
views.py 定义视图
激活app
1)在settings.py文件中将app名称myApp应用加入到INSTALLED_APPS
1
|
INSTALLED_APPS = [<p><br> 'django.contrib.admin' ,<br> 'django.contrib.auth' ,<br> 'django.contrib.contenttypes' ,<br> 'django.contrib.sessions' ,<br> 'django.contrib.messages' ,<br> 'django.contrib.staticfiles' ,<br> 'myApp' ,<br>]</p> |
2)定义模型,一个数据库表对应一个模型。
在models.py中加入类似如下:
class Grades(models.Model):
1
2
3
4
5
|
gname = models.CharField(max_length=20) gdate = models.DateTimeField() ggirlnum = models.IntegerField() gboynum = models.IntegerField() isDelete = models.BooleanField( default =False) |
ps:不用定义主键,后面会自动生成。
3)在数据库中生存数据库表
python manage.py makemigrations
python manage.py migrate
这样在数据库中即生成了与models对应的数据库表,但是表的内容是空的。