Django ajax方法提交表單,及後端接受資料

2022-04-13 04:06:14 字數 2123 閱讀 6588

前台**:

1 

2class="

">

3class="

blog-content

">

4

522

23

js**:

1

2

views:

1

defsub_article(request):2#

if request.is_ajax:

3if request.method == '

post':

4#獲取ajax傳過來的引數值

5 data =request.post

6 id = data.get('

blogid')

7print

'id:%s

' %id

8 title = data.get('

title')

9 body = data.get('

body')

10#body = request.post.get("blog-body")#此種方式不能獲取到值

11print

"title:%s

" %title

12print

"body:%s

" %body

13 blogpost.objects.filter(id=int(id)).update(title=title)

14 blogpost.objects.filter(id=int(id)).update(body=body) #

更改資料15#

blogpost.objects.create(title=title)16#

blogpost.objects.create(body=body)#提交時插入兩條半截資料很可能是這裡分開執行引起的,需要通過id來準確定位修改哪條資料

接收引數

views->引數解析和用資料字典的方式返回json 資料(跨網域名稱請求資料,則使用 jsonp字串)

```

def gettest(request):

data = request.get

print(data)

a = data.get('a')

b = data.get('b')

response_data = {}

response_data['result'] = 's'

response_data['message'] = a+b

```

function posttest() ,

success:function(data)})}

views-> 引入from django.views.decorators.csrf import csrf_exempt,並且增加註解@csrf_exempt,目的是避開csrf檢查

@csrf_exempt

def posttest(request):

data = request.post

print(data)

a = data.get('a')

b = data.get('b')

response_data = {}

response_data['result'] = 's'

response_data['message'] = a+b

return jsonresponse(response_data)

注意點:

post 方式有避開csrf檢查,具體不迴避csrf檢查的方式需要再研究

返回json的方式有兩種

Django Ajax提交post命令403問題

如ajax請求是使用jquery來處理,則django提供了一段 來獲取csrftokencookie 文件 在接收函式前加修飾器,如 from django.views.decorators.csrf import csrf exempt csrf exempt def ajaxview requ...

通過ajax方法向django後台提交表單資料

當 表單介面是區域性介面時,為了更良好的使用者體驗,採用ajax方式向django後台提交表單資料 首先製造乙個區域性表單介面 使用者名稱 name username 密碼 name password id btn 註冊button form ajax btn click function ajax...

ajax提交cookie方法

有時候對於一些公開得資料我們想通過cookie儲存 var expdate new date 初始化時間 expdate.settime expdate.gettime 30 60 1000 時間單位毫秒 document.cookie name value expires expdate.togm...