django自定义Manager方法

友情提示:文章仅为我学习的记录解
更加系统的讲解该方法的链接
前言:
管理器是向Django模型提供数据库查询操作的接口。Django应用程序中每个模型至少有一个管理器。默认情况下管理器名称为objects;这个是可以根据自己的业务需求进行自定义的。
类名.objects.all()默认返回全表数据

实现步骤:

1.在终端中端中执行python manage.py startapp 应用名 创建应用
2.在setting中配置应用
INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘stu’
]
3.在settings中配置数据库mysql
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘django’,
‘HOST’:‘127.0.0.1’,
‘PORT’:3306,
‘USER’:‘root’,
‘PASSWORD’:‘123456789’
}
}
4.创建模型表

class Student(models.Model):
    sname=models.CharField(max_length=30)
    tf=models.BooleanField(default=False)

5.创建牵引文件并连接数据库
在终端中执行python manage.py makemigrations 应用名 生成牵引文件
然后执行python manage.py migrate 连接数据库
6.在数据库中导入对象

from django.db import models
from django.db.models.manager import Manager
class CustomManager(Manager):
    def all(self):
        return Manager.all(self).filter(tf=True)

class Isdeleted(Manager):
    def all(self):
        return Manager.all(self).filter(tf=False)

# Create your models here.
class Student(models.Model):
    sname=models.CharField(max_length=30)
    tf=models.BooleanField(default=False)

    objects=CustomManager()
    show=Isdeleted()

    def __str__(self):
        return 'student:%s'%self.tf
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值