from django.shortcuts import render,HttpResponse,redirect
新手三件套,前期開發都會用到
render #向瀏覽器返回頁面
HttpResponse #向瀏覽器返回字符內容
redirect #重定向
django里有分層的概念
urls.py就是路由層
views.py 就是視圖層
templates.py 就是模板層
modles.py 就是模型層
django框架的簡單使用
urls.py
from app01 import views #這里導入app01包下的模塊
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 執行函數的對應關系,這個是固定寫法,第一個r后面跟的是一個路徑,后面跟倒入的函數
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect
# Create your views here.
# 這里寫函數
def index(request): # 這里一定要有一個形參,request這個是標准的寫法
# 這個可以向瀏覽區返回內容
return HttpResponse('hello web')
PS:訪問地址的時候需要在地址后面跟對應關系的路徑,否則404報錯
django返回一個html頁面
urls.py
from app01 import views #這里導入app01包下的模塊
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 執行函數的對應關系,這個是固定寫法,第一個r后面跟的是一個路徑,后面跟倒入的函數
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect
# Create your views here.
# 這里寫函數
def index(request): # 這里一定要有一個形參,request這個是標准的寫法
# 這個可以向瀏覽區返回內容
return render(request,'index.html')
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我是首頁</title>
</head>
<body>
<h1>django的index頁面</h1>
<a href="http://www.baidu.com">點擊進百度</a>
</body>
</html>
django返回一個重定向
urls.py
from app01 import views #這里導入app01包下的模塊
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 執行函數的對應關系,這個是固定寫法,第一個r后面跟的是一個路徑,后面跟倒入的函數
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect
# Create your views here.
def index(request): # 這里一定要有一個形參,request這個是標准的寫法
# 返回一個重定向
'''當你訪問這個函數的時候,這個函數直接返回一個重定向的地址給你,這樣你訪問的就是這個返回的地址'''
return redirect('http://www.baidu.com') #如果這里是一個頁面文件的地址,則前后都要加 / 否則會出錯
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我是首頁</title>
</head>
<body>
<h1>django的index頁面</h1>
<a href="http://www.baidu.com">點擊進百度</a>
</body>
</html>
PS:重定向就是你發送一個請求,我返回另一個地址給你訪問
關於路徑的查找
默認django的settings文件里面已經寫好了,就是當前項目的跟目錄,如果項目下還有目錄則自己可以拼寫
返回模板文件夾templates下app01文件夾內的頁面模板文件
from django.shortcuts import render,HttpResponse,redirect
# Create your views here.
def index(request): # 這里一定要有一個形參,request這個是標准的寫法
# 因為默認是項目根目錄,所以直接可以寫模板文件下文件及名字+文件名
return render(request,'app01/time.html')
關於urls里面路由和函數的對應關系,正則匹配
from app01 import views
urlpatterns = [
# 這里帶了^ 就是以admin的開頭字母a來正則匹配
url(r'^admin/', admin.site.urls),
# url是一個函數,后面跟的是函數的參數,第一個是一個正則表達式,只要能匹配上index就能執行函數
url(r'index',views.index),
# 如果是^ 開頭和結束符號$結尾,就是只能匹配的路徑只有index,寫其他的都不行
url(r'^index$',views.index),
]
PS:用戶請求的路徑只有符合路由和函數的對應關系才能請求成功
