Django REST framework函式使用

2022-06-07 08:30:14 字數 2688 閱讀 5464

request

# request 使用

# 1request.post # 只能處理表單(form)資料,只能處理「post」方法.

- a = request.post.get('a', 0) 獲取提交表單的a的資料

- 客戶端:除錯資訊

request headers

content-length: 3

request body

a: "a"

# 2request.body # 處理任意資料.可以處理'post', 'put' 和 'patch'方法.

- res = json.loads(request.body.decode()) 獲取提交的資料

- 客戶端: -request post is optional if you use -d, as the -d flag implies a post request.

- 客戶端:除錯資訊

# 判斷是否傳參

if request.post:

a = request.post.get('a', 0)

b = request.post.get('b', 0)

# 判斷引數中是否含有a和b

return httpresponse('輸入錯誤')

else:

return httpresponse('輸入為空')

else:

return httpresponse('方法錯誤')

# 測試資料

import requests

print(res.text)

if request.method == 'post':

# print(request.body)

if isinstance(request.body, str):

try:

req_dic = json.loads(request.body, encoding='utf-8')

print(req_dic)

except valueerror:

return httpresponse('格式錯誤')

return httpresponse('格式錯誤')

# 測試資料

import requests

headers =

data = ''

print(response.text)

listcreateapiview

# 1 settings.py

'rest_framework'

]# 2 urls.py

url(r'^publisher_list2/', views.reportinfolistview.as_view()),

# 3 views.py

from rest_framework.generics import listcreateapiview

from rest_framework import serializers

class reportinfoserializer(serializers.modelserializer):

"""測試報告詳情序列化

"""def to_representation(self, instance):

"""將更新時間變成天

:param instance:

:return:

"""ret = super(reportinfoserializer, self).to_representation(instance)

# ret["case_date"] = ret["case_date"].split("t")[0]

return ret

# 不能省略

class meta:

model = models.publisher

fields = ("name", "addr", )

class reportinfolistview(listcreateapiview):

"""測試報告統計資訊

"""def get_queryset(self):

queryset = models.publisher.objects.all().order_by("id")

return queryset

serializer_class = reportinfoserializer

# 4 html

# a# b

新增# c

×

模態框(modal)標題

Django Rest framework使用例項

一 修改配置檔案 setting.py django.contrib.admin django.contrib.auth django.contrib.contenttypes django.contrib.sessions django.contrib.messages django.contri...

django rest framework許可權控制

暴露唯讀的介面 支援get head options方法,禁用前端更改資料from rest framework import permissions 引入許可權模組 safe methods get head options class readonly permissions.basepermi...

Django REST framework快速入門

django rest framework快速入門 一.django rest framework簡介 1.在開發rest api的檢視中,雖然每個檢視具體操作的資料不同,但增 刪 改 查的實現流程基本套路化,所以這部分 也是可以復用簡化編寫的 增 校驗請求資料 執行反序列化過程 儲存資料庫 將儲存...