Django外键(ForeignKey)操作以及related_name的作用

 之前已经写过一篇关于Django外键的文章,但是当时并没有介绍如何根据外键对数据的操作,也就是如何通过主表查询子表或者通过子表查询主表的信息   首先我定义了两个模型,一个是老师模型,一个是学生模型,一个老师对应多个学生,这个算是一个一对多的类型(如下图所示)        那么如果我们要想查询一个老师对应的学生有哪些,该如何操作呢?    首先我们

  • 0
  • 0
  • 阅读 ( 767 )

django 发送qq邮箱具体步骤,以及遇到的坑

主要的坑在于setting,以及发送的send_mail中的发送目标邮件必须是list。 @setting配置: 这是个人邮箱方法: 下面这个可以开,也可以不开,都是成功的。 #EMAIL_BACKEND='django.core.mail.backends.smtp.EmailBackend' #代理以及端口必须有 EMAIL_HOST='smtp.qq.com' EMAIL_PORT=25 #起初是465,但是实际上是不行的。必须用上面的25才能成功 #EMAIL_PORT=465 EMAIL_

  • 0
  • 0
  • 阅读 ( 825 )

Django Rest Framework-----序列化(serializers)

classPublishModelSerializers(serializers.ModelSerializer): classMeta: model=Publish fields="__all__"#book表的所有字段 ''' 不用按字段,直接序列化到表模型 #必须写一个内部内,名字必须交Meta''' classBookSerializers(serializers.Serializer): title=serializers.CharField(max_length=32) price=s

  • 0
  • 0
  • 阅读 ( 730 )

Django用rest_framework里的serializers.Serializer序列化

序列化组件的使用及接口设计 请求接口设计get请求(restapi规范)GET 127.0.0.1:8000/books/ #获取所有数据,返回值:[{},{},{}] GET 127.0.0.1:8000/books/{id}#获取一条数据,返回值:{} POST 127.0.0.1:8000/books/ #新增一条数据,返回值:{} PUT 127.0.0.1:8000/books/{id}#修改一条数据,返回值:{} DELETE127.0.0.1:8

  • 0
  • 0
  • 阅读 ( 511 )

Django rest framework(6)----序列化

目录 Djangorestframework(1)----认证Djangorestframework(2)----权限Djangorestframework(3)----节流Djangorestframework(4)----版本Djangorestframework(5)----解析器Djangorestframework(6)----序列化Djangorestframework(7)----分页序列化 1.继承Serializer 基本使用  (1)models.py fromdjango.dbim

  • 0
  • 0
  • 阅读 ( 843 )

django rest framework serializers小结

引言  serializers是什么?官网是这样的”SerializersallowcomplexdatasuchasquerysetsandmodelinstancestobeconvertedtonativePythondatatypesthatcanthenbeeasilyrenderedintoJSON,XMLorothercontenttypes.“翻译出来就是,将复杂的数据结构变成json或者xml这个格式的。      在最近的学习中,个人看法,serializers有以下几个作用:   -

  • 0
  • 0
  • 阅读 ( 945 )

Django RESTframework源码剖析

前言:该文章并不是完整的RestFramework源码剖析,而是基于在使用过程中碰到的一些问题,在需要解决这些问题的情况下去阅读了部分源码。 0X00从请求到响应,Django到底做了些什么 1、HTTP请求分为请求报文和响应报文,请求报文由客户端发出,服务端接收。然后经过一系列的处理,服务端将响应报文返回给客户端。当Django收到HTTP请求报文时,会提取请求报文中的信息,并将其

  • 0
  • 0
  • 阅读 ( 646 )

django登录源码与第三方登录验证源码

django登录源码与第三方登录验证源码 引言自制图片验证码准备后端实现前端实现演示效果加干扰使用极验验证码登录极验后台下申请免费账户后端实现前端实现演示效果使用云通讯登录登录云通讯控制台后端实现前端实现 引言 这篇我想总结一下关于登录的一些方式,然后主要以三种方式实现登录验证,第一种是用原始验证码,第二种是用极验验证码,第三种是云通讯的短信

  • 0
  • 0
  • 阅读 ( 780 )

DjangoRestful 递归嵌套序列化器实现

Django嵌套递归序列化器实现 最近在做自己的项目,需要返回评论表相关数据,我的评论表设计的是这样的,父id为空则是等级最高的父评论,然后依次为子、孙子。。。评论信息关联,类似于省市级三级联动,不过这个评论表的深度可以更深 1.刚开始采取的是序列化器嵌套 1.序列化器嵌套就简单多了,只不过就是层数比较多,然后后面都是重复的,下面是我刚开始的重复的序

  • 0
  • 0
  • 阅读 ( 821 )

django-rest-framework中序列化器的序列化和反序列化使用详解

序列化器的目的: (1)数据的转换,转换分两种:序列化、反序列化 (2)数据的校验,只有反序列化时才会用到 1.序列化流程图: 2.反序列化流程图   选项参数用来约束反序列化时前端传递过来的参数是否合法  3. 序列化器中CharField和IntegerField选项参数 4.序列化器中字段通用选项参数 5.models.py代码 fromdjango.dbimportmodels classBookInfo(models.Model): btitle=models.CharField(ma

  • 0
  • 0
  • 阅读 ( 1230 )

Django Rest Framework之序列化

DjangoRestFramework之序列化 一:安装DRF二:APIView三:serializers.Serializer序列化3.1数据模型3.2创建序列化器3.3类视图3.4serializers.Serializer序列总结四:seriarizers.ModelSerializer序列化4.1depth4.2反序列化4.3自定义序列字段的两种写法4.4自定义联表深度(嵌套)4.5单增群增4.6单删群删4.7修改数据4.8批量修改数据4.9视图类与序列化类传参 一:安装DRF pipinsta

  • 0
  • 0
  • 阅读 ( 845 )

Django Rest Framework(DRF)框架原理解析

先写到这儿 

  • 0
  • 0
  • 阅读 ( 690 )

django序列化组件

不用组件传值方式 views.py fromrest_framework.viewsimportAPIView fromapp01importmodels fromapp01.MyserializerimportBookSerializer classBookView(APIview): defget(self,request,*args,**kwargs): #获取所有图书数据 response={'status':100,'msg':'获取成功'} book_list=models.

  • 0
  • 0
  • 阅读 ( 881 )

django 数据序列化的实现

django数据序列化的实现 为什么要自己去序列化呢?为什么不用restful呢? django做全栈开发真的很不错,但做前、后端分离开发时,某些方面可能需要调整。比如,数据的序列化这个问题,跨域问题;当然,这都不是什么大问题。。。下面说说数据序列化 问题 后端与前端通过json数据格式交互数据;django通过orm读取的数据,不能直接用django的serializable或python的序列化方式;那怎

  • 0
  • 0
  • 阅读 ( 1025 )

Django与restfull 之Ⅱ

(什么是restfull的序列化,一般是json格式与前端进行数据交换) 创建一个可以使用的模型 出于本教程的目的,我们将首先创建一个Snippet用于存储代码片段的简单模型。编辑app/models.py文件。注意:良好的编程实践包括注释。 fromdjango.dbimportmodels frompygments.lexersimportget_all_lexers frompygments.stylesimportget_all_styles LEXERS=[itemforiteminget_a

  • 0
  • 0
  • 阅读 ( 822 )

关于Django中,实现序列化的几种不同方法

前言 关于序列化操作,就是将一个可迭代的数据结构,通过便利的方式进行我们所需要的操作。 今天历来归纳一下,Django中的几种不同得分方法,已经Django-restframework提供的方法 创建一个Django的项目 再新建一个app 创建一个模型,以书本出版社为例,自行迁移完成以后,再配置路由,主要讲解的是views.py,其他的不多说了。   数据库中的内容(使用的是sqlite3) 现在我们来

  • 0
  • 0
  • 阅读 ( 891 )

Django跳坑:objects.all()、objects.get()与objects.filter()之间的区别

文章目录 1、三者之间的区别2、获取数据2.1、取单个数据3、序列化3.1、QuerySet序列化3.2、models序列化 1、三者之间的区别 all返回的是QuerySet对象,程序并没有真的在数据库中执行SQL语句查询数据,但支持迭代,使用for循环可以获取数据。get返回的是Model对象,类型为列表,说明使用get方法会直接执行sql语句获取数据filter和all类似,但支持更强大的查询功能all、filter和get得到的数

  • 0
  • 0
  • 阅读 ( 737 )

Django-rest-framework 03(实例:用户注册、超级用户、认证、权限)

Django-rest-framework03 1、创建一个新应用1.1、创建User表1.2、新建序列化器1.3、运行测试2、用户注册、登录2.1、创建超级用户2.2、注册、登录2.3、用户认证3、用户权限3.1、新建auth.py3.2、视图3.3、测试代码总结 1、创建一个新应用 在setting里面配置这个应用 1.1、创建User表 模型 fromdjango.dbimportmodels classUser(models.Model): #unique=True用户名不能重复 u_nam

  • 0
  • 0
  • 阅读 ( 847 )

Django 13购物商城项目(购物车、订单)

Django13购物商城项目 1、新建购物车表:axf_cart2、中间件:用户登录状态获取3、matket里加减号操作购物车4、购物车页面 1、新建购物车表:axf_cart 建表:模型 #购物车 classCart(models.Model): #ForeignKey外键,on_delete=models.CASCADE此值设置,是级联删除,django2必须加这一项 C_user=models.ForeignKey(AXFUser,on_delete=models.CASCADE) C_goods

  • 0
  • 0
  • 阅读 ( 681 )

Django rest framework源码分析----版本

一.版本 1.新建一个工程Myproject和一个app名为api (1)api/models.py fromdjango.dbimportmodels classUserInfo(models.Model): USER_TYPE=( (1,'普通用户'), (2,'VIP'), (3,'SVIP') ) user_type=models.IntegerField(choices=USER_TYPE) username=models.CharField(max_length=32,unique=Tru

  • 0
  • 0
  • 阅读 ( 757 )