Django学习笔记-修改Django的默认的数据库
1.修改设置settings中的配置
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
# 配置连接数据库 ,导入pymysql类库
'ENGINE': 'django.db.backends.mysql',
'NAME': '数据库名称',
'HOST':'数据库IP',
'PORT':端口号,
'USER':'用户名',
'PASSWORD':'密码'
}
}
2.替换掉原来django中使用mysqldb的地方,以后操作mysql都用pymysql这个模块
pymysql 在python2.* 和3.都可以使用
mysqldb 只能在python2.中使用,
替换默认的mysqldb
在对应的app的__init__.py文件中引入pymysql
import pymysql
# 替换掉之前使用mysqldb的地方,以后都使用pymysql,一般都写在对应的app中,每个app都可以自定义使用
pymysql.install_as_MySQLdb()
3.创建模型映射到对应的数据库中
在models.py文件中创建User类
# 创建的表的名字为app的名称拼接类名
class User(models.Model):
# id字段 自增 是主键
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=32)
pwd = models.CharField(max_length=32,null=True)
4.同步到本地数据库
python3 manage.py makemigrations 数据库表变化记录
pythons manage.py migrate 数据库同步命令
菜单中Tools -> run manage.py task 在命令行中执行
makemigrations
migrate
这时就可以在本地看到新创建的user表,django默认还会创建其他的配置App出现其他的表,可以忽略
5.新增或者删除对应的字段
#新增字段 设置为空或者指定默认值
age = models.IntegerField(null=True)
yy = models.CharField(default="你好")
# 删除字段,直接注释掉对应的属性
# 删除表,直接注释掉整个类即可
握不住的沙,干脆扬了它。