1. 程式人生 > >python之Django框架篇-路由系統,檢視,模板,ORM複習

python之Django框架篇-路由系統,檢視,模板,ORM複習

	1. Urls.py 路由系統:
	
		正則
			分組匹配     --> 位置引數
			分組命名匹配 --> 關鍵字引數
		
		分級路由
			include
		
		給路由起別名
			name="xx"
			
		反向解析url
			view
				from django.urls import reverse
				
				reverse("xx", args=[1, 2, 3])
				reverse("xx", kwargs={”k": "v"})
				
		自取其辱
		
	2. 檢視 views.py
		request
			request.method
			request.GET     --> URL裡面的引數
			request.POST    --> post請求的資料
			
			request.path_info        --> 路徑
			request.get_full_path()  --> 路徑加路徑的引數
		
		
		response
			新手必備3件套
			render(request, "xx.html", {“k”: "v", ...})
			HttpResponse("響應")
			redirect("/index/")
			redirect("http://gkate.cn")
			
			from django.http import JsonResponse
			JsonResponse()
			
			FBV和CBV
			
			函式裝飾器和方法裝飾器的區別
			
	3. 模板
		
		filter
			內建的filter方法
			自定義的filter方法
			
		tag
			內建的tag
			自定義的simpleTag
			自定義的inclusionTag
			
		母版和繼承
		
		{% extends ‘base.html’ %}
		
		{% block page-main %}
			{% block small %}
			{% endblock small %}
		{% endblock page-main %}
		
		
		元件 {% include nav %}
		
		
		靜態檔案相關的tag
		
		在模板語言裡面反向解析url
		
			{% url 'url的別名' xx %}
	
		
	4. ORM
		
		對應關係
			類   --> 資料表
			物件 --> 資料行
			屬性 --> 欄位
			
		
		Django連線MySQL資料庫的步驟:
			1. 手動建立庫
			2. 配置settings.py中資料庫的連線資訊
			3. 修改settings.py同目錄下的__init__.py檔案,新增兩句
				import pymysql
				pymysql.install_as_MySQLdb()
			4. 在app下面的models.py中定義類,類一定要繼承mdoels.Model
			5. 執行兩句命令
				1. python manage.py makemigrations
				2. python manage.py migrate
	
		操作資料表
		
		操作資料行(增刪改查)
			單表
			外來鍵
			多對多
			一對一
			
		
		ORM高階:
			常用欄位和方法
			必知必會13條
			神奇的雙下劃線
			跨表的正向查詢反向查詢
			
			F和Q
			
			聚合和分組
			
			事務
			
			執行原生的SQL語句
	
	5. Cookie和Session,分頁
	
	
	6. AJAX
		
		$.ajax({
			url: “”,
			type: "post",
			data: {"k1": JSON.stringify([1,2,3])},
			success:function(data){
				
			}
		})
	7. form表單
	
	8. 中介軟體