Django - 如何覆盖模型上的过滤器?

2024-01-28

我很好奇是否有最佳实践或推荐方法来实现此目的?

假设我有一个这样的模型:

class Cat(models.Model):
    field1=models.CharField(...)
    field2=models.CharField(...)
    evil=models.BooleanField(...)

我想要完成的是我不希望任何视图能够访问邪恶为真的 Cat 记录。

我是否真的需要将 .filter(evil=False) 添加到每个 Cat.objects.filter 调用中,或者是否有某种方法可以在类中执行一次并让邪恶的猫永远不会出现在任何地方?


好的,自定义经理可以适合这里。只需查看一下docs https://docs.djangoproject.com/en/dev/topics/db/managers/#custom-managers。正如克里斯·普拉特所说,请记住,第一任经理将成为默认经理。

希望这能引导我们走向正确的方向。

更新(也许你可以这样做):

from django.db import models

class EvilCategoryManager(models.Manager):
    def get_query_set(self):
        return super(EvilCategoryManager, self).get_query_set().filter(evil=False)

class Cat(models.Model):
    #.... atrributes here
    objects = models.Manager()
    no_evil_cats = EvilCategoryManager()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django - 如何覆盖模型上的过滤器? 的相关文章

  • Django CBV表单提交返回的JSON显示为新页面

    我正在使用 Django 3 2 我正在创建一个简单的时事通讯订阅表格 表单提交将 JSON 返回到前端 然后应该使用前端来更新页面的部分内容 但是 当我发布表单时 JSON 字符串将在新页面上显示为文本 这是调用视图的路由 urlpatt
  • Django Celery 和多个数据库(Celery、Django 和 RabbitMQ)

    是否可以设置与 Django Celery 一起使用的不同数据库 我有一个配置了多个数据库的项目 并且不希望 Django Celery 使用默认数据库 如果我仍然可以使用 django celery 管理页面并读取存储在这个不同数据库中的
  • 放弃处理 无法处理视频 - Youtube API?

    我正在使用 youtube data v3 api 通过我的网站上传 mp4 视频 http post 请求如下所示 access token request session access token url https www googl
  • Django外键:获取相关模型?

    是否可以通过外键字段本身获取外键的相关模型 例如 如果我有 3 个模型 class ModelA models Model field1 models CharField max length 10 class ModelB models
  • 使用 Django 在 App Engine 上存储图像

    我正在尝试使用 Django 在 Google App Engine 上的 db BlobProperty 字段中上传并保存调整大小的图像 我认为处理请求的相关部分如下所示 image images resize request POST
  • Django - 删除图像编辑表单中的“当前”并将其替换为实际图像

    编辑具有图像字段的对象时 系统会向您显示当前图像路径和标准文件上传字段 我想要做的是能够用实际图像替换显示的路径 当前 pathtoimage jpg 我该怎么做 提前致谢 如果您正在谈论 Django 管理中的表单 您可以覆盖 Admin
  • Django Postgres 全文 TrigramSimilarity 多个字段

    我想弄清楚如何使用TrigramSimilarity with unaccent对于多个字段 到目前为止我有 def filter by location self queryset location log info Filtering
  • 检查 Django 中是否存在用户名

    我正在开发一个 Django 项目 用户将能够以一种形式更改他们的用户名以及他们的名字和姓氏 在 forms py 中 我试图找出用户是否存在 如果是这样 它应该显示错误 问题是 如果用户想要更改他的名字和姓氏并将他的用户名保留在输入中 则
  • ImproperlyConfigured at / 不允许空静态前缀 - Django

    我正在使用 Django 上传 显示图像 该网站部署在 Heroku 上 下列的this https coderwall com p bz0sng教程我能够成功上传图像 但是 图像并未显示在模板中 然后我了解到我的 urls py 末尾应该
  • 如何向用户提供有关 Celery 任务执行状态的持续通知?

    我以这种方式将我的项目与芹菜集成在一起 在里面views py收到用户请求后 def upload request if POST request method save the file task parse delay continue
  • Django,按当前登录用户过滤多对多模型表单中呈现的集合

    我知道它就在那里 但我找不到它 所以我有一个 类别 模型和一个 书籍 模型 其中有多对多的 类别 在模型表单中创建新书时 所有类别都会呈现给用户以分配给该书 在这种情况下 我只希望当前用户创建的类别显示在该字段中 而不是所有类别 最好的方法
  • 错误:[ngModel:datefmt] 预期 `2015-05-29T19:06:16.693209Z` 为日期 - Angular

    我正在尝试angular申请与Django with rest framework 该应用程序从服务器接收 json 信息 关键之一是created time 该字段的值的格式根据iso 8601 例如2015 05 29T19 06 16
  • 使用 GeoDjango 在坐标系之间进行转换

    我正在尝试将坐标信息添加到我的数据库中 添加django contrib gis支持我的应用程序 我正在写一个south数据迁移 从数据库中获取地址 并向 Google 询问坐标 到目前为止 我认为我最好的选择是使用geopy为了这 接下来
  • django 模板和列表字典

    我正在使用 django 的模板系统 但遇到以下问题 我将一个字典对象 example dictionary 传递给模板 example dictionary key1 value11 value12 我想做以下事情 for key in
  • Django基于PK和另一个字段保存对象

    我正在尝试将 postgresql 中的分区表与 Django 安装一起使用 通过Google搜索主题 我发现Django本身不支持分区 所以我自己对表进行了分区 我根据第二个字段对表进行分区 该字段是另一个表上的外键 基本模型设置如下 c
  • 使用自定义用户模型时缺少组和权限分配

    我正在构建一个具有通过 Django Groups 定义的多个角色的应用程序 我从自定义用户模型开始 定义如下 我发现使用自定义用户模型时使用的组和权限存在奇怪的差异 例如继承丢失了某些内容 我想使用自定义用户模型 因此我不使用用户名 但我
  • 如何使用 Twython 将 oauth_callback 值传递给 oauth/request_token

    Twitter 最近刚刚强制执行以下规定 1 您必须通过oauth callbackoauth request token 的值 这不是可选的 即使您已经在 dev twitter com 上设置了一个 如果您正在执行带外 OAuth 请通
  • 类型错误:login() 需要 1 个位置参数,但给出了 2 个

    我使用内置身份验证 django 编写了一个登录视图auth login 我的代码给出了上述错误 错误代码为 o 500 from rest framework response import Response from rest fram
  • 如何在 django 中正确设置自定义 handler404?

    根据文档 https docs djangoproject com en dev topics http views customizing error views这应该相当简单 我只需要定义handler404 目前我正在做 在我的顶部u
  • Django:登录用户并在同一页面上刷新而不定义模板?

    我正在尝试使用引导下拉登录表单来让用户登录 我可以对我的用户名和密码进行硬编码并进行身份验证 但我试图在不进入登录屏幕的情况下让用户登录 这是我的代码 模板 我使用操作来调用 logUserIn url 以便表单可以发布到该视图 ul cl

随机推荐

  • jsp页面如何将int值转换为字符串

    我有一个包含 Map 的地图 我使用它在 jsp 页面上迭代它
  • jQuery/JavaScript - 拥有大量小 .js 文件时的性能问题?

    我有一个包含大量引用的 js 文件的网站 这些是相当小的文件 但我想将我的方法按主题 功能分开 将所有方法保存在一个 js 文件中是否更好 或者拥有许多 20 30 个小文件都只包含一些行没有问题 无论如何 将它们分开进行开发 但您应该考虑
  • ios 11 自定义导航栏位于状态栏下方

    刚刚下载了 xcode 9 我遇到了这个奇怪的问题 在 ios 11 上 我的自定义导航栏似乎只有一半大小 位于状态栏下方 在 ios 10 上工作正常 所以这是我的代码 let newNavbar UINavigationBar UINa
  • 启用 AOP 会破坏我对带有字符串的工厂 bean 的依赖注入

    启用 AOP 会破坏我对带有字符串的工厂 bean 的依赖注入 这是上下文文件中的片段
  • R类型转换表达式()函数()

    我一直在尝试用 R 编写一个程序来实现牛顿法 我基本上是成功的 但有两个小障碍一直困扰着我 这是我的代码 Newton lt function f f guess f lt readline prompt Function f lt rea
  • time() 是好盐吗?

    我正在查看一些我自己没有编写的代码 该代码尝试使用 SHA512 对密码进行哈希处理 并仅使用time 作为盐 是time 盐太简单了还是这个代码安全 感谢您的回答和评论 我在这里为新读者总结一下 每个用户的盐应该不同 因此如果2个用户同时
  • 如何计算两个 AnchorEntities 之间的距离?

    有一个位置是SIMD3 还有 AnchorEntity 我想拉开两人之间的距离 我是怎么做到的 var distance distance position self modelentity position relativeTo nil
  • GUID 的不可猜测性如何?

    不久前 我开发了一个网络应用程序 用户可以在其中购买门票 由于我们客户流程的工作方式 您在购买后实际上得到的是一个包含票号的 URL 这些是在中东购买房产的门票 每张门票的潜在价值约为 3 000 000 美元 显然 给出连续整数是一个坏主
  • 如何在开发过程中禁用 Crashlytics

    有没有简单的方法可以在开发时关闭 Crashlytics Android SDK 我不希望每次我做蠢事时它都会发生崩溃 另一方面我不想发表评论Crashlytics start 并且可能有忘记取消注释并提交的风险 我从 Crashlytic
  • 如何向 Django MPTT 模型添加额外数据以在模板中显示?

    这个问题与this one https stackoverflow com questions 19762288 how to add extra data to a django model for display in template
  • 带有重音字符的 SQLite 排序列

    我正在开发一个网站 使用SQLite使用 PHP 的数据库 我在跑Windows 开发 和我的生产环境应该是 nix平台 这是我的表的架构 CREATE TABLE animals id INTEGER NOT NULL UNIQUE na
  • 如何使网站的第一部分首先加载? (就像 Google PageSpeed 一样)

    我有一个非常大的网站 加载需要很长时间 大约需要 120 秒 我想做的是加载网站的第一半加载第一 然后用户可以在加载其他部分的同时进行冲浪 我正在尝试做的事情如下 首先这可能吗 据我所知是的 因为 Google PageSpeed 就是这样
  • 如何向网络服务器发出我正在发布 gzip 压缩数据的信号?

    我有一个客户端将把大型 JSON 文件发布到 API 服务器 由于文件是如此可压缩 我想对它们进行 gzip 并发送压缩数据 我想知道的是 向服务器表明我的意图的最佳方式是什么 基本上 我想要相反的Accept encoding 这样服务器
  • 通过 ArrayList 进行反向迭代会出现 IndexOutOfBoundsException

    当我反向迭代 ArrayList 时 我收到 IndexOutOfBoundsException 我尝试进行前向迭代 没有问题 我期望并知道列表中有五个元素 代码如下 Collection rtns absRtnMap values Lis
  • 在 SVG 路径内嵌套文本

    是否可以嵌套文本 例如text元素 在 SVG 内path元素 我这样问是因为我希望将鼠标悬停在路径上时显示一个文本气球 如下所示 path mypath hover text display block 我想避免使用 JavaScript
  • Java BigDecimal精度问题

    我知道以下行为是一个老问题 但我仍然不明白 System out println 0 1 0 1 0 1 或者即使我使用BigDecimal System out println new BigDecimal 0 1 doubleValue
  • 使用多上下文应用程序自定义 ASPNET Identity 一对多关系

    基本上 我希望有一个可以创建自己故事的用户 我有这些课程 public class ApplicationUser IdentityUser public string DisplayedName get set public class
  • 如何使用 JavaScript/jQuery 编辑 PHP 变量?

    我想更新 PHP 变量 LinkOpen基于复选框元素的当前状态 avflipswitch 基于 avflipswitch复选框状态 我想切换 PHP 变量的值 LinkOpen之间 blank and self 所以我可以把这个值推到我的
  • 在单元测试中获取命令行参数

    在 Visual Studio 2008 Pro 的测试项目中 我创建了一个测试项目 并且我想配置项目属性以向测试提供命令行参数 我设置了属性 但后来意识到我不知道如何实际使用该参数 如何从 MSTest 获取参数 据我所知 VS 2008
  • Django - 如何覆盖模型上的过滤器?

    我很好奇是否有最佳实践或推荐方法来实现此目的 假设我有一个这样的模型 class Cat models Model field1 models CharField field2 models CharField evil models Bo