1 安裝:html
pip install django==1.11.9python
另外:在pycharm中安裝 django,在下圖中七步走mysql
2. 新建Django項目
django-admin startproject 項目名
3. Django 設置 settings.py文件中
1. 註釋掉 csrf相關的那一行(大概是46行!)
2. 配置html文件相關
3. 配置靜態文件相關 /static/
4. 基礎必備的三件套
1. HttpResponse --> 字符串
2. render() --> HTML文件 --> 打開HTML文件而且完成字符串的替換
3. redirect(「/book_list/」) --> 跳轉
5. HTML頁面中form表單提交數據三個要點:
1. input必定要放在form表單裏面,而且 input 要有name屬性
2. form表單裏面觸發提交操做 必定要有submit按鈕!!! <input type="submit" value="提交">
3. 要指定form表單提交的URL(action屬性) 而且指定提交的方法(method屬性)
sql
Django中操做MySQL數據庫的準備工做:
1. 本身用SQL語句建個數據庫 --> create database s20;
2. 告訴Django去哪兒連數據庫
在settings.py文件中設置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 告訴Django鏈接數據庫的類型
'NAME': 's20',
'HOST': "127.0.0.1",
'PORT': 3306, # 不要加引號
'USER': "root",
"PASSWORD": "123456", # 要加引號
}
}
3. MySQLdb、pymysql,告訴Django使用pymysql鏈接MySQL數據庫
project/__init__.py文件中:
import pymysql
pymysql.install_as_MySQLdb()
4. 在app/models.py文件中,根據特定的語法 建立類
class Book(models.Model):
# 定義一個自增的ID主鍵
id = models.AutoField(primary_key=True)
# 定義一個最大長度爲32的varchar字段
title = models.CharField(max_length=32)
5. 執行兩個命令
1. python manage.py makemigrations --> 記錄 app/models.py文件的任何改動
2. python manage.py migrate --> 把上面的改動翻譯成SQL語句,而後去數據庫中執行數據庫
對數據的增刪改查django
1. 增 Book.objects.create(title="書名",....) 2. 刪 models.Book.objects.get(id=2).delete() 3. 改 obj = models.Book.objects.get(id=1) obj.title = "字段2" obj.save() --> 把改動同步到數據庫中!!! 4. 查 查單個: obj = models.Book.objects.get(id=1) 查全部: objs = models.Book.objects.all()
django的模型層 -ORM簡介app
ORM,全稱是object relation mapping 對象關係映射學習
主要學習的是Mysqlspa
在py文件中能夠使用pymysql來操做mysql翻譯
ORM的映射關係以下
ORM引擎 python ---------------> sql 類名 表名 屬性變量 字段 屬性值 約束條件 對象 一條記錄
ORM的特色
1 符合python語法
2 本身寫的sql語句,效率不高。
3 將用戶的sql轉換成mysql的相關語句,須要一個翻譯的過程
想要查看ORM的命令轉換能夠在settings下面加入
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'propagate': True, 'level':'DEBUG', }, } }
使用命令
python manage.py makemigrations
python manage.py migrate
就能夠看到命令的詳細轉換了