1. 程式人生 > >Django的視圖與網址之加法計算

Django的視圖與網址之加法計算

.py 技術分享 127.0.0.1 conf create src creat 地址 strong

在最新的Django2.1中,views.py中采用的地址映射方式發生了變化,通過一個加法運算我們來看一看。

方法一:在視圖views.py中定義視圖邏輯,求解兩個數的加法運算:c = a + b,定義一個add()函數

 1 from django.shortcuts import render
 2 from django.http import HttpResponse
 3 from blog import models
 4 
 5 # 計算求和,網址示例:http://127.0.0.1:8000/add/?a=2&b=4
 6 def add(request):
 7     a = request.GET.get(
a, 0) 8 b = request.GET.get(b, 0) 9 c = int(a) + int(b) 10 return HttpResponse(str(c))

註:request.GET類似於一個字典,在此處使用request.GET.get(‘a‘, 0)表示在沒有傳遞時,a的默認值是0

在urls.py中,進行地址映射

1 from django.contrib import admin
2 from django.urls import path
3 from blog import views
4 urlpatterns = [
5     path(
admin/, admin.site.urls), 6 path(index/, views.index), 7 path(add/, views.add, name= add), 8 ]

啟動服務,在瀏覽器中,輸入網址:http://127.0.0.1:8000/add/,默認輸出值是0

技術分享

輸入網址:http://127.0.0.1:8000/add/?a=3&b=4,輸出值是7

技術分享

方法二:采用正則的表示方法,Django2.1同Django.1.8.x版本不同,采用正則表達時要引入url,在views.py重新定義一個add2

1 from django.shortcuts import
render 2 from django.http import HttpResponse 3 from blog import models 4 # Create your views here. 5 6 7 def add2(request, a, b): 8 c = int(a) + int(b) 9 return HttpResponse(str(c))

修改urls.py中的內容,引入:from django.conf.urls import url

 1 from django.contrib import admin
 2 from django.urls import path
 3 from django.conf.urls import url
 4 from blog import views
 5 urlpatterns = [
 6     path(admin/, admin.site.urls),
 7     path(index/, views.index),
 8     path(add/, views.add, name= add),
 9     url(radd/(\d+)/(\d+)/, views.add2, name= add2),  # 這裏使用了正則表達式進行匹配
10 ]

重啟服務,輸入網址:http://127.0.0.1:8000/add/3/4/

技術分享

Django的視圖與網址之加法計算