Django中模型(三)

Django中模型(三)

四、模型成员

1、类属性

objects:是Manager类的一个对象,作用是与数据库进行交互。

定义模型类时,没有定义管理器,则默认创建名为objects的管理器。

2、自定义模型管理器

格式:自定义名=models.Manager()

当为模型定义管理器后,Django将不再为模型生成objects模型管理器。

3、自定义管理器Manager类

概述:模型管理器是Django的模型进行与数据库进行交互个接口,一个模型可以有多个管理器。

作用:向管理器类中添加额外的方法;修改管理器返回的原始查询集—重写get_queryset()方法。

Eg:在models.py文件中

class StudentsManager(models.Manager):

def get_queryset(self):

return super(StudentsManager,self).get_queryset().filter(isDelete=False)#将满足isDelete=False条件的数据取出

原文地址:https://www.cnblogs.com/xshan/p/8323559.html

时间: 2024-08-22 14:16:02

Django中模型(三)的相关文章

Django中模型(二)

Django中模型(二) 三.定义模型 1.模型.属性.表.字段间的关系: 一个模型类在数据库中对应一张表:在模型类中定义的属性,对应该模型对照表中的字段. 2.定义属性 A.概述 ·django根据属性的类型确定以下信息 ·当前选择的数据库支持字段的类型 ·渲染管理表单时使用的默认html控件 ·在管理站点最低限度的验证 B. ·django会为表增加自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后,则django不会再生成默认的主键列 C.属性命名限制 ·遵循标识

Django中模型(五)

Django中模型(五) 六.模型查询 1.概述 查询集,表示从数据库获取的对象集合. 过滤器就是一个函数,基于所给的参数限制查询集结果.查询集可以有多个过滤器. 从sql角度来说,查询集合等价于select语句,过滤器等价于where条件. 2.查询集 A.概述 在管理器上调用过滤器方法返回查询集.查询集经过过滤器方法筛选后返回新的查询集,所以可以写成链式调用. B.惰式执行 创建查询集不会带来任何数据的访问,直到调用数据时,才会访问数据库 C.直接访问数据库的情况 迭代.序列化.与if合用

django中模型

django需要使用数据库,则需要安装对应的驱动,比如mysql,则需要安装mysqlclient驱动: pip install mysqlclient 在settings.py文件中配置数据库连接信息: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'firstsite', 'HOST': 'localhost', 'USER': 'root', 'PASSWORD': '123456', 'P

django中模型的简单操作

class Person_Tbl(models.Model):     '''     定义人物类     '''     name = models.CharField(max_length=254,default='')                     #姓名     sex =  models.CharField(max_length=125,default='')                       #性别     height = models.IntegerField

<三>django模板 模型 模型关系

django模板 模板查找顺序: 查找顺序 setting.py(INSTALL_APPS)顺序查找(APP)templates目录下的所有模板名字的字符串匹配(先全局,再局部),一旦匹配就不会再找 查找路径 完整路径:$APP/templates/user/login.html(从templates路径下算起) from django.shortcuts import render from django.views import View from django.views.generic.

解决在django中应用keras模型时出现的ValueError("Tensor %s is not an element of this graph." % obj)问题

用keras训练好模型,再在django初始化加载模型,这个过程没有问题,但是在调用到模型执行model.predict()的时候就报错: raise ValueError("Tensor %s is not an element of this graph." % obj) ValueError: Tensor Tensor("dense_2/Softmax:0", shape=(?, 2), dtype=float32) is not an element of

{Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session

本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 xxx 八 xxx 一 会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器了.从双方接通电话那一刻起,会话就开始了,到某一方挂断电话表示会话结束.在通话过程中,你会向10086发出多个请求,那么这多个请

django中使用原生sql

在Django中使用原生Sql主要有以下几种方式: 一:extra:结果集修改器,一种提供额外查询参数的机制 二:raw:执行原始sql并返回模型实例 三:直接执行自定义Sql ( 这种方式完全不依赖model,前两种还是要依赖于model ) 实例: 使用extra: 1:Book.objects.filter(publisher__name='广东人员出版社').extra(where=['price>50']) Book.objects.filter(publisher__name='广东

Django中ORM介绍和字段及其参数

ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中. ORM在业务逻辑层和数据库层之间充当了桥梁的作用. ORM的由来 字母‘O’起源于“对象”(Object),'R'代表“关系”(Relational). 几乎所有的软件开发过程中都会涉及到对象和关系数据库.在用户层面和业务逻辑层