1.編輯 try_reqwest.html
在 try_reqwest.html 中增加 reviseData方法:
// put 方法,修改數(shù)據(jù)
var reviseData = function() {
var id = 1; // 書本的id
reqwest({
url: 'api/revise_book/' + id,
type: "json",
method: "put",
// 要修改的數(shù)據(jù)
data: {
title: '書本1(修改后)',
author: '作者1(修改后)',
summary: '簡(jiǎn)介1(修改后)'
},
success: function(resp) {}
})
};
2.修改api.py
在 api.py 中增加以下方法,來(lái)處理獲得的數(shù)據(jù):
# put 方法用于修改數(shù)據(jù),delete 方法用于刪除數(shù)據(jù)
@api_view(['PUT', 'DELETE'])
# id參數(shù)來(lái)自u(píng)rl, 用于找到要改變的那條數(shù)據(jù)
def revise_book(request, id):
# 找到要修改的那條數(shù)據(jù)
revise_book = Book.objects.get(id=id)
if request.method == 'PUT':
serializer = BookSerializer(revise_book, data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
3.分配 url
分配一個(gè)url 用作修改數(shù)據(jù):
from library.api import book, revise_book
……
urlpatterns = [
……
url(r'^api/revise_book/(?P<id>\d+)$', revise_book), # id作為參數(shù)
……
]
4.測(cè)試
打開(kāi) “http://127.0.0.1:8000/try_reqwest” ,在控制臺(tái)輸入:reviseData(),結(jié)果如下:
再打開(kāi)后臺(tái)管理查看:
可見(jiàn)數(shù)據(jù)已被修改。