代码详解django中数据库设置
首先定义数据库的表名和字段
启动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
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
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myApp',
]
2)定义模型,一个数据库表对应一个模型。
在models.py中加入类似如下:
class Grades(models.Model):
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对应的数据库表,但是表的内容是空的。