我一直在我的一個(gè)視圖中使用 request.data 而不是序列化器來獲取 json 數(shù)據(jù)并對(duì)其進(jìn)行處理,我的問題是這樣可以,或者可以說使用 request.data 是“一個(gè)很好的做法”,或者我應(yīng)該為此創(chuàng)建序列化器類看法?
1 回答

紅顏莎娜
TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超13個(gè)贊
首先使用序列化器的原因是將本機(jī) python 數(shù)據(jù)類型轉(zhuǎn)換為有效的 JSON,反之亦然。因此,序列化程序添加了一層驗(yàn)證,以確保此轉(zhuǎn)換過程根據(jù)序列化程序定義正確運(yùn)行。
如果您決定在視圖中省略序列化器,則您必須自己處理數(shù)據(jù)驗(yàn)證,并且最終實(shí)現(xiàn)了一個(gè)在實(shí)踐中已經(jīng)存在的功能,并且已經(jīng)過“戰(zhàn)斗測(cè)試”并由多個(gè)有成就的開發(fā)人員進(jìn)行了工作。在某些情況下,您的視圖中并不嚴(yán)格需要序列化器,例如,當(dāng)您只是顯示來自另一個(gè)源的數(shù)據(jù)并且只允許 GET 請(qǐng)求時(shí),但每當(dāng)您處理數(shù)據(jù)輸入時(shí),我都會(huì)認(rèn)為不使用序列化器是不好的做法。
添加回答
舉報(bào)
0/150
提交
取消