婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Django學習筆記之View操作指南

Django學習筆記之View操作指南

熱門標簽:西藏快速地圖標注地點 如何在地圖標注文字 廈門crm外呼系統如何 n400電話申請多少錢 女王谷地圖標注 ai地圖標注 長春人工智能電銷機器人官網 百應ai電銷機器人鄭州 地圖標注推廣單頁

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操作內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Golang 并發以及通道的使用方式
  • golang 如何替換掉字符串里面的換行符\n
  • spring boot集成mongodb的增刪改查的示例代碼
  • go并發實現素數篩的代碼
  • golang 中的 nil的場景分析
  • 完美解決go Fscanf 在讀取文件時出現的問題

標簽:綿陽 內江 興安盟 廊坊 黔東 亳州 渭南 拉薩

巨人網絡通訊聲明:本文標題《Django學習筆記之View操作指南》,本文關鍵詞  Django,學習,筆記,之,View,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Django學習筆記之View操作指南》相關的同類信息!
  • 本頁收集關于Django學習筆記之View操作指南的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产成人免费视频网站| 日本aⅴ精品一区二区三区 | 亚洲视频1区2区| 国产老女人精品毛片久久| 日韩欧美精品在线| 三级精品在线观看| 欧美人与禽zozo性伦| 日本三级韩国三级欧美三级| 972aa.com艺术欧美| 国产精品久久久久久久午夜片| 国产一区二区电影| 欧美激情一区在线| 91在线小视频| 午夜精品久久久久久久蜜桃app | 欧美影片第一页| 一区二区三区四区激情| 欧美三区免费完整视频在线观看| 亚洲综合久久久| 这里是久久伊人| 国产精品综合视频| 国产精品久久久久久久午夜片| 91麻豆精品秘密| 天天综合网天天综合色| 日韩免费看的电影| 成人黄页在线观看| 亚洲成在人线免费| 精品国产免费视频| 99免费精品在线| 日韩高清在线不卡| 中日韩av电影| 在线成人高清不卡| 成人短视频下载| 亚洲va韩国va欧美va| 久久久午夜精品理论片中文字幕| 色综合色综合色综合| 精品一区二区影视| 一区二区三区欧美激情| 2020日本不卡一区二区视频| 色婷婷亚洲综合| 国产精品1024久久| 亚洲国产综合91精品麻豆| 亚洲精品在线观看视频| 一区二区三区四区国产精品| 久久久久久一二三区| 欧美在线视频不卡| 99亚偷拍自图区亚洲| 久久99久久99小草精品免视看| 综合电影一区二区三区| 精品88久久久久88久久久| 在线一区二区视频| 国产精品亚洲人在线观看| 香蕉影视欧美成人| 亚洲乱码国产乱码精品精可以看 | 亚洲精品一区二区三区99| 在线观看网站黄不卡| 国产成人免费视频网站高清观看视频 | 成人激情综合网站| 日产国产欧美视频一区精品| 亚洲视频免费在线观看| 欧美国产日韩精品免费观看| 日韩免费观看高清完整版| 欧美色精品天天在线观看视频| 99久久综合狠狠综合久久| 国产精品一区三区| 久久99国产乱子伦精品免费| 亚洲妇女屁股眼交7| 亚洲午夜私人影院| 一区二区三区在线观看欧美| 中文字幕永久在线不卡| 自拍偷自拍亚洲精品播放| 亚洲欧美日韩人成在线播放| 国产精品乱码妇女bbbb| 日本一区二区综合亚洲| 国产免费久久精品| 一色桃子久久精品亚洲| 国产精品美女一区二区| 国产精品人妖ts系列视频 | 欧美性感一类影片在线播放| 91亚洲国产成人精品一区二区三 | 97se亚洲国产综合自在线观| 99视频有精品| 欧美亚洲一区三区| 91精品欧美综合在线观看最新 | 精品久久久久久最新网址| 精品国产一区二区三区不卡| 日韩精品一区二区三区视频播放| 日韩欧美一二区| 精品久久久久一区二区国产| 欧美tickling挠脚心丨vk| 亚洲精品在线免费播放| 中文字幕一区日韩精品欧美| 亚洲一区二区三区四区的| 午夜精品免费在线| 国内精品伊人久久久久av影院| 国产精品888| 欧美性猛交一区二区三区精品| 日韩欧美一区中文| 国产视频一区二区在线| 亚洲欧美日韩小说| 久久99精品久久久久久久久久久久| 国产成人夜色高潮福利影视| 91传媒视频在线播放| 日韩精品一区二区三区视频| 1区2区3区国产精品| 香蕉av福利精品导航| 国产黄色精品视频| 欧美日韩不卡视频| 中文字幕不卡一区| 三级影片在线观看欧美日韩一区二区| 国产一区二区三区日韩| 99久久精品免费| 日韩一区二区免费电影| 自拍偷拍欧美激情| 精品无人区卡一卡二卡三乱码免费卡| 一本大道久久a久久综合| 精品福利一二区| 亚洲444eee在线观看| 北条麻妃一区二区三区| 欧美一卡二卡三卡四卡| 亚洲第一在线综合网站| www.亚洲激情.com| 久久看人人爽人人| 亚洲午夜成aⅴ人片| 91浏览器入口在线观看| 日本一区二区三区久久久久久久久不 | 99久久国产综合精品女不卡| 精品国产露脸精彩对白| 婷婷久久综合九色综合绿巨人| 国产 日韩 欧美大片| www欧美成人18+| 国产一区二区三区黄视频| 日韩一区二区免费高清| 日韩精品乱码av一区二区| 色婷婷亚洲婷婷| 亚洲手机成人高清视频| 99久久婷婷国产综合精品电影| 久久婷婷国产综合国色天香| 国产精品一区免费在线观看| 国产午夜亚洲精品理论片色戒| 国产综合一区二区| 精品国产91乱码一区二区三区| 亚洲成人在线免费| 欧美色精品天天在线观看视频| 综合久久给合久久狠狠狠97色| 国产主播一区二区| 久久久精品国产99久久精品芒果| 首页亚洲欧美制服丝腿| 色系网站成人免费| 肉色丝袜一区二区| 欧美影片第一页| 亚洲欧美日韩国产综合在线| 国产精品911| 亚洲精品欧美在线| eeuss鲁一区二区三区| 久久久久成人黄色影片| 免费观看在线综合| 在线精品视频一区二区三四| 中文字幕一区二区三区不卡 | 中文字幕av一区二区三区高 | 日韩一区二区三区视频在线观看 | 色94色欧美sute亚洲线路一ni| 日韩一二三区视频| 三级在线观看一区二区 | 成人黄色软件下载| 精品久久久久久久人人人人传媒| 石原莉奈在线亚洲三区| 欧美三级视频在线| 国产欧美一区二区精品性色| 91麻豆免费看片| 国产日韩精品一区二区三区| 精品系列免费在线观看| 国产性天天综合网| 福利一区二区在线| 中文文精品字幕一区二区| 亚洲三级在线免费观看| 精品黑人一区二区三区久久| 亚洲观看高清完整版在线观看 | 国产99久久久国产精品免费看 | 91精品国产综合久久国产大片| 亚洲少妇中出一区| 色又黄又爽网站www久久| 亚洲欧美国产毛片在线| 欧美在线观看视频一区二区三区| 一区二区三区美女视频| 欧美成人猛片aaaaaaa| 国内久久精品视频| 中文字幕乱码一区二区免费| 99久久精品国产一区二区三区| 激情亚洲综合在线| 国产精品久久久一本精品 | 午夜精品一区在线观看| 日韩欧美一区电影| 国产成人av电影免费在线观看| 日韩三级高清在线| 国产99久久久国产精品潘金| 亚洲影视在线观看| 日韩欧美黄色影院| 亚洲成人av中文| 欧美刺激脚交jootjob| 成人白浆超碰人人人人|