1.数据库组件配置
如果你的数据库连接报错,缺少组件,可以安装以下的包
安装依赖(如果使用虚拟环境,需要在虚拟环境下安装)
安装mysql开发依赖包
sudo apt-get install libmysqlclient-dev gcc
配置mysql_config(如果使用虚拟环境,需要在虚拟环境下安装)
sudo updatedb
locate mysql_config
pip install MySQL-python
配置settings
配置mysql的连接
新建一个mydbop app
在manage.py shell中输入
python manage.py startapp mydbop
2.配置文件的修改
修改setting.py文件
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': "localhost",
"PORT": 3306,
"USER": "admin",
"PASSWORD": "Root110qwe",
"NAME": "mydb"
}
}
将对应的app添加至settings中
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'mydbop'
]
3.建表
编写对应的model
在每个app中都有对应的models.py文件,我们可以在里面定义你需要的models
models.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
class UserMessage(models.Model):
name = models.CharField(max_length=50)
phone_num = models.CharField(max_length=50)
生成对应的migrations文件
python manage.py makemigrations mydbop
迁移同步
python manage.py migrate mydbop
ps: 一套对应生成的migrations文件与数据库需保存一致,否则系统会报错!!!
ps: 需要对数据库表的操作都需要models.py,然后走对应的migrate流程,不能直接在数据库中修改数据
1、一但将生成的migrations文件通过migrate命令同步至数据库以后,被操作的migrations文件不能再操作
2、如何避免上面的情况:
(1)不要对已经生成好的migrations文件做任何操作
(2)所有对数据库的操作同一个人做,并保留好一套migrations文件
(3)不要直接在数据库中修改任何操作,比如修改字段,添加字段,删除字段等等;
4.改表
我们接着来修改表 我们给article增加一个字段
修改models.py文件
class UserMessage(models.Model):
name = models.CharField(max_length=50)
phone_num = models.CharField(max_length=50)
id_card = models.CharField(