日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

解決django中form表單設置action后無法回到原頁面的問題

瀏覽:339日期:2024-10-20 14:44:23

django中form表單設置action后,點提交按鈕是跳轉到action頁面的,比如設置action為login,網址為192.168.1.128,跳轉后便會來到192.168.1.128/login,F5刷新也會是重新提交表單對話框,無法回到原頁面。

因此就要在django服務器進行重定向,具體就是

from django.shortcuts import redirect#最后返回原頁面return redirect(url)

補充知識:Django + Ajax發送POST表單,并將返回信息回顯到頁面中

將表單數據發送回后端,然后處理后端返回的信息并顯示在當前頁面中,這里使用Ajax進行處理;

那么先看js代碼:

<!--以下為 Ajax腳本 --> <script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js'></script> <script type='text/javascript'> $(document).ready(function(){ $('#save').click(function(){ $.ajax({ url:'/api/add_event/', #url type: 'POST',#提交表單的類型,相當于method='post' dataType: 'json', #dataType, 這個是請求后,返回的數據將以json格式顯示 data:{'name': $('#id_name').val(), #在'#'號后面是控件id, 所以千萬不要搞錯了,要不然會出大事的'limit':$('#id_limit').val(),'address': $('#id_address').val(),'start_time': $('#id_start_time').val(),'status': $('#id_status').val(), },#Data這個地方,必須要獲取數據,代表將獲取到的數據發送到后端,后端再進行處理 success:function(data){ console.log(data); #調試使用 console.log(data.status); #調試使用 console.log(data.message); #調試使用 $('.text').text(data.message); #將后端返回到結果通過前端頁面進行展示 }, #注意標點 }); #需要注意標點符號,如果標點符合錯誤了,那ajax基本上都不會執行(否則,后果很嚴重哦) }); #注意標點 }); #注意標點 </script>

注意(踩過的坑):

1.contentType: 'application/json' ——>加入該語句時,在后端print(request.POST)時無法獲取內容,相當于后端根本拿不到數據。因此在網上搜索了解到,使用contentType: “application/json”則data只能是json字符串;不使用時contentType一般為默認的application/x-www-form-urlencoded格式, 因此如果不限制 POST格式,干脆就不寫。

2. 說說“data”這里面需要注意:data:{'name', $('#id_name').val(), } 這其中id_name必須為控件的id 名稱,使用其它的則不能獲取的數據,這個還是得注意。

3. 標注符號,標點符號,標點符號,重要的事情說三遍,當然可以借助專門的編輯器(我主要是懶哦,哈哈)

4. $('.text').text(data.message); 回顯在html中,是對后端返回的數據進行處理

那行回顯在網頁面上面

<font color='red'> <span class='text'></span> </font>

以下為html代碼

<div class='container'> <div class='col-md-4 col-md-offset-4'> <form onsubmit='return false' action='##' method='POST' class='form-horizontal'> <!--此處就是通過后端返回到前端,前端進行展示--> <font color='red'><span class='text'></span> </font> <div class='form-group'><label for='id_name'>發布會名稱:</label><input type='text' name='name' placeholder='發布會名稱' maxlength='128' required /> </div> <div class='form-group'><label for='id_limit'>Limit:</label><input type='number' name='limit' required /> </div> <div class='form-group'><label for='id_address'>發布會地址:</label><input type='text' name='address' placeholder='地址' maxlength='128' required /> </div> <div class='form-group'><label for='id_start_time'>開始日期:</label><input type='text' name='start_time' required /> </div> <div class='form-group'><label for='id_status'>發布狀態:</label><select name='status' id='id_status'> <option value='blank'>-----</option> <option value='1'>True</option> <option value='0'>False</option></select> </div> <div align='center'> <input type='submit' value='保存發布會' ></input > </div> </form> </div></div>

現在來看一下后端的代碼:

from django.views.decorators.csrf import csrf_exempt@csrf_exemptdef add_event(request): if request.is_ajax(): print(request.body) print(request.POST) name = request.POST.get(’name’, ’’) # 發布會名稱 limit = request.POST.get(’limit’, ’’) # 限制人員 status = request.POST.get(’status’, ’’) # 發布會狀態 address = request.POST.get(’address’, ’’) # 發布會地址 start_time = request.POST.get(’start_time’, ’’) # 發布會時間 if name == ’’ or limit == ’’ or status == ’’ or start_time == ’’: return JsonResponse({’status’: 10021, ’message’: ’parameter error’}) # 判斷發布會名稱重復 result = Event.objects.filter(name=name) if result: return JsonResponse({’status’: 10023, ’message’: ’event name already exists’}) if status == ’’: status = 1 try: # Event.objects.create(id = eid, name = name, limit = limit, address = address, status = int(status), start_time=start_time) Event.objects.create(name=name, limit=limit, address=address, status=int(status), start_time=start_time) except ValidationError as e: error = ’start_time format error. It must be in YYYY-MM-DD HH:MM:SS’ return JsonResponse({’status’: 10024, ’message’: error}) return JsonResponse({’status’: 200, ’message’: ’add event success’})

1、在后端處理時,我們需要加入:@csrf_exempt 標記,所以導包from django.views.decorators.csrf import csrf_exempt,否則會出現錯誤csrf_token錯誤 (403)

2、request.is_ajax()判斷當前是否是使用ajax 進行表單提交

3、django request.POST / request.body

當request.POST沒有值 需要考慮:

1.請求頭中的: Content-Type: application/x-www-form-urlencoded request.POST中才會有值(才會去request.body中解析數據),關于Content-Type前面也提到,不寫的錯誤,它就是默認。

request.body的請求數據

b’name=%E5%A4%BA%E5%A4%BA&limit=123‘

request.POST的數據,django已進行自動處理

QueryDict: {‘name’: [‘奪奪’], ‘limit’: [‘123’]

以上這篇解決django中form表單設置action后無法回到原頁面的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Django
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产亚洲福利| 蜜桃久久久久| 一区二区三区四区在线观看国产日韩| 国产精品超碰| 亚洲91网站| 亚洲乱码久久| 久热精品在线| 日韩精品一二三四| 香蕉久久久久久久av网站| 久久精品国产www456c0m| 日韩三区免费| 日韩在线不卡| 99成人超碰| 久久亚洲资源中文字| 亚洲欧洲午夜| 蜜桃伊人久久| 美美哒免费高清在线观看视频一区二区| 久久国产66| 麻豆久久一区二区| 国产一区丝袜| 欧美精品一区二区久久| 久久久久久久久99精品大| 精品久久久久中文字幕小说| 国产一区三区在线播放| 国产日韩一区二区三免费高清| 国产图片一区| 国产午夜一区| 热久久免费视频| 色爱综合av| 日韩在线高清| 色88888久久久久久影院| 国产96在线亚洲| 在线精品视频在线观看高清| 日韩超碰人人爽人人做人人添| 欧美日韩一视频区二区| 欧美gv在线| 日韩久久精品| 欧美精品高清| 精品欧美久久| 国产欧美高清| 久久精品亚洲人成影院| 国产精品欧美大片| 欧美亚洲免费| 久久久久99| 国产高清精品二区| 另类综合日韩欧美亚洲| 精品视频一区二区三区在线观看 | 伊人精品视频| 国产精品激情| 麻豆91精品91久久久的内涵| 中文字幕在线看片| 性欧美69xoxoxoxo| 亚洲精品人人| 欧美性感美女一区二区| 免费在线观看不卡| 亚洲日本网址| 久久精品国产999大香线蕉| 日本精品久久| 精品国产欧美日韩| 视频一区日韩| 亚洲理论在线| 伊人久久亚洲| 日本视频一区二区| 日韩一区二区三区免费视频| 亚洲欧美日韩高清在线| 午夜精品久久久久久久久久蜜桃| 国产在线欧美| 欧美激情另类| 欧美a级片一区| 精品美女在线视频| 91精品99| 精品国产美女a久久9999| 国产精品xx| 国产日产一区| 欧美日韩黑人| 免费在线视频一区| 午夜亚洲精品| 玖玖玖国产精品| 久久香蕉网站| 视频福利一区| 麻豆91在线播放| xxxxx性欧美特大| 国产精品免费大片| 亚洲欧美日本日韩| 久久成人亚洲| 亚洲va久久久噜噜噜久久| 国产精品magnet| 欧美国产极品| 欧美激情麻豆| 国产视频网站一区二区三区| 夜夜嗨一区二区| 高清一区二区三区av| 国产综合色区在线观看| 成人久久一区| 国产精品午夜一区二区三区| 日韩精品dvd| 国产精品一卡| 午夜在线精品偷拍| 亚洲精品一级| 久久蜜桃精品| 伊人影院久久| 伊人精品在线| 伊人成人网在线看| 亚洲激情av| 精品一区三区| 亚洲精品美女91| 韩国久久久久久| 日韩精品中文字幕一区二区| 91综合视频| 欧美亚洲三级| 日韩在线卡一卡二| 国产伦久视频在线观看| 色一区二区三区四区| 欧美视频久久| 日韩精品免费视频一区二区三区| 蜜臀久久精品| 婷婷中文字幕一区| 久久久久久一区二区| 国产欧美精品久久| 日韩av在线播放网址| 国产精品13p| 婷婷激情久久| 欧美日韩国产亚洲一区| 精品日韩视频| 欧美日韩激情| 久热综合在线亚洲精品| 欧美aⅴ一区二区三区视频| 中文字幕一区二区三区四区久久 | 色天使综合视频| 中国女人久久久| 免费精品国产的网站免费观看| 国产 日韩 欧美 综合 一区| 伊人久久成人| 婷婷五月色综合香五月| 国产精品久久久久77777丨| 精品免费av在线| 婷婷久久免费视频| 三级精品视频| 国产欧美一区| 成人精品天堂一区二区三区| 日本综合视频| 久久精品亚洲| 久久精品国产999大香线蕉| 久久精品人人| 卡一精品卡二卡三网站乱码| 热久久久久久| 蜜桃视频在线观看一区二区| 欧美国产极品| 夜鲁夜鲁夜鲁视频在线播放| 不卡中文字幕| 亚洲一区日韩| 欧美二区视频| 热久久久久久久| 亚洲精品视频一二三区| 在线精品一区二区| 亚洲精品观看| 91日韩免费| 91亚洲成人| 久久亚洲在线| 精品资源在线| 欧美日本不卡高清| 亚洲综合三区| 五月精品视频| 99综合视频| 9国产精品视频| jiujiure精品视频播放| 中文字幕高清在线播放| 亚洲欧美激情诱惑| 久久精品欧美一区| 麻豆精品在线播放| 青青伊人久久| 99久精品视频在线观看视频| 爽好多水快深点欧美视频| 精品一区二区三区中文字幕| 国产精品欧美三级在线观看| 国内不卡的一区二区三区中文字幕| 国产精品白丝一区二区三区| 精品日韩一区| 国产一在线精品一区在线观看| 久久久久伊人| 亚洲手机视频| 国产中文在线播放| 免费在线观看日韩欧美| 久久97视频| 久久不见久久见中文字幕免费| 亚洲精品一级二级三级| 成人黄色av| 精品视频网站| 久久亚洲精品中文字幕| 精品国产a一区二区三区v免费| 欧美xxxx中国| 亚洲成人国产| 欧美国产极品| 日韩精品视频网站| 免费在线观看一区二区三区| 日韩精品午夜视频| 精品国产乱码| 免费人成在线不卡| 成人在线黄色| 日本不卡高清|