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

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

Django學習筆記之View操作指南

瀏覽:29日期:2024-09-11 15:55:23
Django的View

一個視圖函數(類),簡稱視圖,是一個簡單的Python 函數(類),它接受Web請求并且返回Web響應。響應可以是一張網頁的HTML內容,一個重定向,一個404錯誤,一個XML文檔,或者一張圖片。

無論視圖本身包含什么邏輯,都要返回響應。代碼寫在哪里也無所謂,只要它在你當前項目目錄下面。除此之外沒有更多的要求了——可以說“沒有什么神奇的地方”。為了將代碼放在某處,大家約定成俗將視圖放置在項目(project)或應用程序(app)目錄中的名為views.py的文件中。

導入:from django.views import View

一、查詢所有數據

查詢數據在自定義的視圖類中定義get方法

使用django.http模塊中的JsonResponse對非json格式的數據做返回處理

在JsonResponse必須添加safe=False參數,否則會報錯:In order to allow non-dict objects to be serialized set the safe

from django.http import HttpResponse from django import http # Create your views here. class UserView(View): ’’’ 用戶視圖 ’’’ def get(self, request): # 模型類實例化對象 users = UserProfile.objects.all() user_list = [] for user in users: user_dict = { ’id’: user.id, ’username’: user.username, ’password’: user.password, ’open_id’: user.open_id, ’code’: user.code } user_list.append(user_dict) return http.JsonResponse(user_list) 二、創建數據

使用django中的json,把前端傳遞過來的json數據轉成字典

使用django.db.models模塊中的Q來查詢多個字段在數據庫中是否存在

from django.views import View from django.http import HttpResponse from django import http from django.db.models import Q import json class UserView(View): ’’’ 用戶視圖 ’’’ def post(self, request): # 獲取數據, json轉字典 dict_data = json.loads(request.body.decode()) print(dict_data) nick_name = dict_data.get(’nickName’) code = dict_data.get(’code’) open_id = 'xljsafwjeilnvaiwogjirgnlg' # 校驗數據 result = UserProfile.objects.filter(Q(code=code) | Q(open_id=open_id)) if not result.exists(): # 數據入庫 user = UserProfile.objects.create( username=nick_name, open_id=open_id, code=code ) # 返回響應 user_dict = { ’id’: user.id, ’username’: user.username, ’password’: user.password, ’open_id’: user.open_id, ’code’: user.code } return http.JsonResponse(user_dict) return http.JsonResponse('用戶已存在', safe=False, status=202)三、查詢某一條數據(單個)

前端需要傳遞pk/id值,通過pk/id查詢數據,查詢一條數據必須用get,不能用filter,否則會報錯:AttributeError: ’QuerySet’ object has no attribute ’id’

數據轉換

返回響應

class UserProfileDetail(View): ’’’ 詳情視圖 ’’’ def get(self, request): userInfo = UserProfile.objects.get(id=id) if not userInfo: return HttpResponse('查詢的用Info戶不存在', status=404) user_dict = { ’id’: userInfo.id, ’username’: userInfo.username, ’password’: userInfo.password, ’open_id’: userInfo.open_id, ’code’: userInfo.code } return http.JsonResponse(user_dict, status=200) 四、更新一條數據

前端需要傳遞pk/id值,通過pk/id查詢數據,查詢一條數據必須用get,不能用filter,否則會報錯:AttributeError: ’QuerySet’ object has no attribute ’id’

更新一條數據時必須使用filter來查詢數據集,再使用update(**data)來更新數據,不能使用get,否則會報錯:AttributeError: ’模型類’ object has no attribute ’update’

get查詢獲取到的是數據對象,而filter查詢獲取到的是數據集

class UserProfileDetail(View): ’’’ 詳情視圖 ’’’ def put(self, request, id): data_dict = json.loads(request.body.decode()) userInfo = UserProfile.objects.get(id=id) if not userInfo: return HttpResponse('查詢的用Info戶不存在', status=404) UserProfile.objects.filter(id=id).update(**data_dict) userInfo = UserProfile.objects.get(id=id) user_dict = { ’id’: userInfo.id, ’username’: userInfo.username, ’password’: userInfo.password, ’open_id’: userInfo.open_id, ’code’: userInfo.code } return http.JsonResponse(user_dict, status=200)五、刪除某一條數據

class UserProfileDetail(View): ’’’ 詳情視圖 ’’’ def delete(self, request, id): userInfo = UserProfile.objects.filter(id=id) if not userInfo: return HttpResponse('刪除的數據不存在', status=404)UserProfile.objects.filter(id=id).delete() return HttpResponse('數據刪除成功', status=204)

上述的操作只能適用于數據表中字段很少的情況,如果字段較多,寫起來會很麻煩,不利于開發

總結

到此這篇關于Django學習筆記之View操作指南的文章就介紹到這了,更多相關Django View操作內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Django
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩精品免费视频人成| 一本一本久久| 国产日产一区| 日韩不卡一区二区三区 | 欧美一级一区| 日韩av不卡在线观看| 日本91福利区| 亚洲a成人v| 天堂va在线高清一区| 日韩精品亚洲一区二区三区免费| 欧美日韩一区二区三区在线电影| 国产精品久久久久久妇女| 国产精品黄色片| 激情不卡一区二区三区视频在线| 久久青青视频| 蜜桃成人av| 视频在线观看91| 日韩一区二区三区四区五区| 日韩不卡一区二区三区| 国产精品一国产精品k频道56| 国产福利一区二区三区在线播放| 麻豆成人综合网| 久久精品国产在热久久| 高清久久精品| 欧美 日韩 国产一区二区在线视频| 午夜一级久久| 国产精品一区二区精品| 91av亚洲| 日韩中文字幕1| 欧美日韩精品一区二区三区在线观看| 久久精品国产福利| jiujiure精品视频播放| 日韩和欧美一区二区| 精品久久久中文字幕| 亚洲成人免费| 日本午夜精品一区二区三区电影| 97人人精品| 亚洲欧美日韩专区| 免费视频一区二区三区在线观看 | 麻豆国产精品| 蜜桃国内精品久久久久软件9| 亚洲精品黄色| 精品一二三区| 亚洲深夜av| 国产精品久久| 欧美1级日本1级| 日韩av电影一区| 精品无人区麻豆乱码久久久 | 久久中文字幕一区二区三区| 精品中文一区| 国产精品chinese| 国产精品v一区二区三区| 亚洲午夜在线| 国产日韩精品视频一区二区三区| 国产亚洲一区二区手机在线观看| 亚洲精品护士| 久久精品导航| 国产精品一区二区中文字幕| 91精品在线观看国产| 欧美日韩在线精品一区二区三区激情综合| 亚洲www啪成人一区二区| 日本一区二区三区中文字幕| 成人国产综合| 亚洲精品九九| 国产91久久精品一区二区| 国产精品一线天粉嫩av| 在线亚洲成人| 蜜桃视频在线网站| 国产调教一区二区三区| 伊人久久亚洲美女图片| 成人在线黄色| 日韩精品免费视频一区二区三区 | 久久久91麻豆精品国产一区| 香蕉久久久久久久av网站| 日本а中文在线天堂| 欧美日韩一区二区三区在线电影| 免费av一区二区三区四区| 你懂的亚洲视频| 亚洲专区视频| 女人天堂亚洲aⅴ在线观看| 精品美女视频 | 亚洲日产av中文字幕| 黑丝美女一区二区| 精品国产成人| 日韩av一区二区在线影视| 在线综合视频| 91精品精品| 国产一区二区三区国产精品| 国产视频一区二| 一区二区三区四区日韩| 激情欧美丁香| 日韩免费高清| 精品国内亚洲2022精品成人| 欧美在线首页| 在线免费观看亚洲| 黄色欧美日韩| 国产在线成人| 天堂√中文最新版在线| 久久wwww| 久久精品72免费观看| 日韩有吗在线观看| 一区二区三区午夜视频| 亚洲专区在线| 99在线|亚洲一区二区| 一区二区小说| 丝袜av一区| 亚洲综合电影| 成人精品国产亚洲| 国产第一亚洲| 国产videos久久| 久久字幕精品一区| 蜜桃久久久久| 你懂的国产精品永久在线| 国产亚洲高清一区| 欧美久久精品| 国产精一区二区| 国产精品mv在线观看| 国产精品xxx| 国产黄色精品| 精品黄色一级片| 另类小说一区二区三区| 精品国产欧美日韩一区二区三区| 久久亚洲资源中文字| 麻豆国产精品一区二区三区| 国产精品片aa在线观看| 久久亚州av| 色婷婷综合网| 日韩精品专区| 五月天av在线| 久久久成人网| 激情综合网站| 国产精品美女久久久浪潮软件| 美日韩精品视频| 日韩一区精品| 国产欧美另类| 成人午夜网址| 欧美在线观看视频一区| 91成人网在线观看| 免播放器亚洲一区| 日韩精品福利一区二区三区| 国产精品网址| 福利一区和二区| 日韩精品欧美| 午夜欧美视频| 久久成人国产| 日韩黄色av| 久久免费视频66| 日韩精品欧美| 一区二区国产精品| 麻豆精品在线视频| 在线天堂资源www在线污| 婷婷成人在线| 视频一区二区三区在线| 日本少妇精品亚洲第一区| 另类小说一区二区三区| 99视频精品全部免费在线视频| 日韩一级精品| 欧美亚洲三级| 国产精品蜜芽在线观看| 国产精品av一区二区| 亚洲精品免费观看| 久久香蕉网站| 夜夜嗨一区二区| 国产精品丝袜在线播放| 日韩免费高清| 亚洲久草在线| 福利一区视频| 美女精品网站| 精品一区二区三区免费看| 国产字幕视频一区二区| 日本不卡视频在线| 日韩一区电影| 日韩美女精品| 免费观看亚洲| 日韩精品一区第一页| 欧美黑人做爰爽爽爽| 免费观看久久av| 国产亚洲一区| 亚洲福利一区| 国产精品伦一区二区| 蜜臀av免费一区二区三区| 91九色综合| 久久亚洲专区| 国产精品久av福利在线观看| 欧美在线影院| 麻豆久久一区二区| 99xxxx成人网| 精品欧美日韩精品| 亚洲日产av中文字幕| 国产一区二区亚洲| 亚洲专区视频| 日韩精品免费一区二区在线观看 | 国产aa精品| 亚洲a级精品| 午夜av成人| 国产精品一区二区99| 亚洲欧美日韩综合国产aⅴ| av中文资源在线资源免费观看| 日本午夜精品| 91超碰国产精品|