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()