DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'webdb',
'USER':'root',
'PASSWORD':'',
'HOST':'localhost',
'PORT':3306,
}
}
还需要在__init__.py 里
import pymysql pymysql.install_as_MySQLdb()
数据库的同步操作
1 ./manage.py makemigrations
作用:将每个应用下的models.py 文件生成一个数据库的中间文件,并将中间文件保存到 migrations 的目录中
2 ./manage.py migrate
作用:将每个应用下的migrations 目录的中间文件同步到数据库中
模型相关指令
1 版本切换指令
python3 manage.py migrate 应用名称 版本号
2 通过数据库自动导出models类 (这个指令毛病太多,不建议使用)
python3 manage.py inspectdb > 文件名.py 但是经测试在mac 上执行报错 -bash: db.py: Permission denied ,不知道怎么解决
模型中的增删改查
1 增(方案一)
Entry.objects.create(属性=值,属性=值)
返回值:创建好的实体对象
例如
def add_views(request):
# Entry.objects.create()
obj = Author.objects.create(name='王老师',age=32,email='wang.qq.com')
print(obj.id,obj.name,obj.age,obj.email)
return HttpResponse("add ok")
方案二
创建一个Entry 对象,并通过save() 进行保存
obj = Author(name='各款健康',age=55,
email='[email protected]')
obj.save()
方案三
使用字典构建对象,并通过save() 进行保存
dic = {
'name':'狗狗',
'age':32,
'email':'333.qq.com',
'isActive':False
}
obj = Author(**dic)
obj.save()