日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Django View和URL

發布時間:2025/3/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django View和URL 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網頁程序的邏輯:request進來 -> 從服務器獲取數據 -> 處理數據 -> 把網頁呈現出來

?

url 設置相當于客戶端向服務器發出request請求的入口,并用來指明要調用的程序邏輯

views 用來處理程序邏輯,然后呈現到template(一般為GET方法,POST方法略有不同)

template 一般為html+CSS的形式,主要是呈現給用戶的表現形式

?

Django中views里面的代碼時一個一個函數邏輯,處理客戶端(瀏覽器)發送的HTTPRequest,然后返回HTTPResponse。

那么開始在my_blog/article/views.py中編寫簡單的邏輯

?

?

  • from django.shortcuts import render

  • from django.http import HttpResponse

  • # Create your views here.

  • def home(request):

  • return HttpResponse("Hello World, Django")


  • ?

    ?

    如何使這個邏輯在http請求進入時被調用,這里需要在my_blog/my_blog/urls.py中進行url設置

    ?

    ?

  • # -*- coding: utf-8 -*-

  • from django.conf.urls import patterns, include, url

  • from django.contrib import admin

  • ?
  • urlpatterns = [

  • # url(r'^$', 'article.views.home'),

  • # url(r'^(?P<my_args>\d+)/$', 'article.views.detail', name='detail'),

  • url(r'^admin/', admin.site.urls),

  • url(r'^$', 'article.views.home'),

  • ]


  • ?

    ?

    url() 函數有四個參數,兩個是必須的:regex和views,兩個可選的:kwargs和name

    regex是regular expression的簡寫,這是字符串中的模式匹配的一種語法,Django將請求的URL從上至下依次匹配列表中的正則表達式,直到匹配到一個為止。

    view當Django匹配了一個正則表達式就會調用指定的view邏輯,上面代碼中會調用article/views.py中的home函數

    kwargs任意關鍵字參數可傳一個字典至目標view

    name命名你的URL,使url在Django的其他地方使用,特別是在模塊中

    ?

    很多時候我們希望給view中的函數邏輯傳入參數,從而呈現我們想要的結果

    現在再my_blog/article/views.py 加入如下代碼:

    ?

    ?

  • def detail(request, my_args):

  • return HttpResponse("You're looking at my_args %s." % my_args)


  • ?

    ?

    在my_blog/my_blog/urls.py 中設置對應的url

    ?

  • urlpatterns = [

  • # url(r'^$', 'article.views.home'),

  • # url(r'^(?P<my_args>\d+)/$', 'article.views.detail', name='detail'),

  • url(r'^admin/', admin.site.urls),

  • url(r'^$', 'article.views.home'),

  • url(r'^(?P<my_args>\d+)/$', 'article.views.detail', name='detail'),

  • ]

  • ?

    ?

    ^(?P<my_args>\d+)/$這個正則表達式的意思是將傳入的一位或者多位數字作為參數傳遞到views中的detail作為參數, 其中?P<my_args>定義名稱用于標識匹配的內容

    轉載自https://blog.csdn.net/xiaoquantouer/article/details/51792860

    總結

    以上是生活随笔為你收集整理的Django View和URL的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。