Django處理Ajax發(fā)送的Get請(qǐng)求代碼詳解
Django處理Ajax發(fā)送的Get請(qǐng)求實(shí)例,Ajax優(yōu)點(diǎn)在一是異步請(qǐng)求,無(wú)需等待響應(yīng)就可以再次發(fā)起請(qǐng)求,而是局部刷新,避免整個(gè)頁(yè)面刷新的網(wǎng)頁(yè)閃動(dòng)。
打開(kāi)命令行窗口,輸入命令,創(chuàng)建django工程:
django-admin startproject djajaxget cd djajaxget python manage.py startapp demo
使用PyCharm打開(kāi)上一步創(chuàng)建的工程,在工程同名文件夾的settings.py文件,修改部分代碼,注冊(cè)應(yīng)用,配置模板路徑、靜態(tài)文件路徑,修改部分的settings.py內(nèi)容如下:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'demo.apps.DemoConfig' ] STATIC_URL = '/static/' STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')] TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join('templates')], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ]
在工程根目錄新建tempaltes文件夾,并在文件夾內(nèi)新建‘test.html'文件,代碼如下:
{% load staticfiles %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript" src="/static/js/jquery-1.9.1.min.js"></script> <script> $(document).ready(function(){ $("#btn").click(function(){ $.ajax({ url:"/demo/", type:"GET", data:{ "var1": $("#div").text() }, success:function(resdata){ $("#div").text(resdata) } }) }) }) </script> </head> <body> <button id="btn" value="hh">點(diǎn)我發(fā)送ajax請(qǐng)求</button> <div id="div">hello</div> </body> </html>
在工程根目錄創(chuàng)建static文件夾,并在文件夾內(nèi)新建js文件夾,在文件夾內(nèi)放入
jquery腳本
在工程的同名文件夾的urls.py文件,添加到應(yīng)用視圖的路由,代碼如下:
from django.conf.urls import url,include from django.contrib import admin from demo import views urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'test/',views.test), url(r'demo/',views.demo), ]
在應(yīng)用的views.py編寫(xiě)兩個(gè)視圖函數(shù),代碼如下:
from django.shortcuts import render,HttpResponse # Create your views here. def test(request): return render(request,'test.html') def demo(request): s = request.GET.get('var1') s +='world' return HttpResponse(s)
運(yùn)行服務(wù)器
python manage.py runserver
打開(kāi)網(wǎng)頁(yè),效果如下圖
點(diǎn)擊按鈕后,效果如下圖,Ajax請(qǐng)求成功返回了數(shù)據(jù)
以上就是關(guān)于本次Django處理Ajax發(fā)送的Get請(qǐng)求實(shí)例內(nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。
相關(guān)文章
Python使用Paramiko控制linux第三方庫(kù)
這篇文章主要介紹了Python使用Paramiko控制linux第三方庫(kù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05使用python制作游戲下載進(jìn)度條的代碼(程序說(shuō)明見(jiàn)注釋)
這篇文章主要介紹了用python制作游戲下載進(jìn)度條的代碼(程序說(shuō)明見(jiàn)注釋),代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10Python數(shù)組遍歷的簡(jiǎn)單實(shí)現(xiàn)方法小結(jié)
這篇文章主要介紹了Python數(shù)組遍歷的簡(jiǎn)單實(shí)現(xiàn)方法,結(jié)合實(shí)例總結(jié)分析了Python針對(duì)數(shù)組的元素,索引常用遍歷技巧,需要的朋友可以參考下2016-04-04Python利用hashlib實(shí)現(xiàn)文件MD5碼的批量存儲(chǔ)
這篇文章主要為大家詳細(xì)介紹了如何用Python和hashlib實(shí)現(xiàn)文件MD5碼的批量存儲(chǔ)功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下2023-05-05django admin后臺(tái)添加導(dǎo)出excel功能示例代碼
這篇文章主要介紹了django admin 后臺(tái)添加導(dǎo)出excel功能示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05使用 Python 實(shí)現(xiàn)簡(jiǎn)單的 switch/case 語(yǔ)句的方法
這篇文章主要介紹了用 Python 實(shí)現(xiàn)簡(jiǎn)單的 switch/case 語(yǔ)句的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-09-09Python實(shí)現(xiàn)快速提取PDF文檔中的圖片
提取PDF文檔中的圖片是一項(xiàng)常見(jiàn)的任務(wù),本文將介紹如何使用PyPDF2和pdfminer.six這兩個(gè)庫(kù)來(lái)提取PDF文檔中的圖片,感興趣的可以了解一下2023-06-06