首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在django restframework Charfilter中接受大小写

在Django Rest Framework中,可以使用CharFilter来接受大小写。CharFilter是Django Filter的一种过滤器,用于过滤字符字段。

要在CharFilter中接受大小写,可以使用lookup_expr参数来指定过滤器的匹配方式。默认情况下,lookup_expr参数的值为'exact',表示精确匹配,不区分大小写。如果要区分大小写,可以将lookup_expr参数的值设置为'iexact',表示不区分大小写的精确匹配。

以下是一个示例:

代码语言:txt
复制
from django_filters import rest_framework as filters

class MyFilter(filters.FilterSet):
    field_name = filters.CharFilter(lookup_expr='iexact')

    class Meta:
        model = MyModel
        fields = ['field_name']

在上面的示例中,我们定义了一个名为MyFilter的过滤器类,并在其中使用CharFilter来过滤名为field_name的字段。通过将lookup_expr参数设置为'iexact',我们实现了不区分大小写的精确匹配。

使用这个过滤器类时,可以在视图中进行如下配置:

代码语言:txt
复制
from rest_framework import filters
from .filters import MyFilter

class MyView(viewsets.ModelViewSet):
    queryset = MyModel.objects.all()
    serializer_class = MySerializer
    filter_backends = [filters.DjangoFilterBackend]
    filterset_class = MyFilter

在上面的示例中,我们将DjangoFilterBackend添加到filter_backends列表中,并将filterset_class设置为我们定义的过滤器类MyFilter。这样就可以在视图中使用过滤器来接受大小写。

推荐的腾讯云相关产品:腾讯云服务器(CVM),腾讯云数据库(TencentDB),腾讯云对象存储(COS),腾讯云容器服务(TKE)。你可以在腾讯云官网上找到这些产品的详细介绍和文档。

腾讯云官网链接:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

django restframework serializer 增加自定义字段操作

在使用django restframework serializer 序列化在django定义的model时,有时候我们需要额外在serializer增加一些model没有的字段。...restframework Serializer field SerializerMethodField 这是一个只读字段。...由 method_name 参数引用的序列化方法应该接受一个参数(除了 self),这是要序列化的对象。它应该返回你想要包含在对象的序列化表示的任何内容。...例如: 场景介绍:一个用户往往对应多个角色,而角色字段并不在UserProfile表,这就需要我们新增角色字段到user序列化 from .models import UserProfile from...return instance 以上这篇django restframework serializer 增加自定义字段操作就是小编分享给大家的全部内容了,希望能给大家一个参考。

3.4K40

django写接口(实战篇)

:视图及模版》 《django入门:Admin管理系统及表单》 《django入门:通用视图类重构视图》 《用django写接口(入门篇)》 《用django写接口(优化篇)》 正文 上一部分我们通过基本类重构了...然后我们需要将过滤器模块到 settings.py 的 INSTALLED_APPS 进行注册才可以使用。...类来写 class PostFilter(django_filters.rest_framework.FilterSet): # 定义进行过滤的参数,CharFilter 是过滤参数的类型,过滤器参数类型还有很多...,lookup_expr 为筛选参数的条件 # 例如 icontains 为 忽略大小写包含,例如 NumberFilter 则可以有 gte,gt,lte,lt, # year__gt...,year__lt 等 title = django_filters.CharFilter('title', lookup_expr='icontains') # 指定筛选的

2K20

Django REST Framework-如何使用过滤器

Django REST Framework (DRF) 是一个开源的 Web 框架,它建立在 Django 上,可以帮助你轻松地构建 RESTful API。...使用内置的过滤器DRF 内置了很多过滤器,其中一些是常用的过滤器:ExactFilter:使用精确匹配过滤,可以用于过滤整数、布尔值、字符串等类型的字段;CharFilter:使用模糊匹配过滤,可以用于过滤字符串类型的字段...编写自定义的过滤器可以让你更好地控制过滤逻辑,并且可以使用任何 Django QuerySet 方法来处理过滤器。...我们还展示了如何在视图集合中使用这些过滤器,并提供了一些例子来帮助你更好地理解它们的用法。...另外,我们还展示了如何编写自定义的过滤器,以便你可以更好地控制过滤逻辑,并使用任何 Django QuerySet 方法来处理过滤器。

1.9K40

第 7 篇:文章详情的 API 接口

文中所涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库[2] 一旦我们使用了视图集,并实现了 HTTP 请求对应的 action 方法(对应规则的说明见 使用视图集简化代码),将其在路由器中注册后,django-restframework...贴心的是,django-rest-framework 已经帮我们把 retrieve 的逻辑在 mixins.RetrieveModelMixin 里写好了,直接混入视图集即可: class PostViewSet...django-rest-framework 以该字段的值从 get_queryset 返回的资源列表筛选出单个资源对象。...lookup_field 字段的值将从请求的 URL 捕获,所以你看到文章接口的 url 模式为 /posts/:pk/,假设将 lookup_field 指定为 title,则 url 模式为 /posts...那么如何在视图集中区分不同的 action 动作呢?视图集有一个 action 属性,专门用来记录当前请求对应的动作。

99830

Django Swagger接口文档生成

:接口测试站点(http://httpbin.org/#/),也是利用Swagger来生成接口文档 Swagger优势 1)Swagger可生成一个具有互动性的API控制台,开发者可快速学习和尝试API...2)Swagger可生成客户端SDK代码,用于不同平台上(Java、Python...)的实现 3)Swagger文件可在许多不同的平台上从代码注释自动生成 4)Swagger有一个强大的社区,里面有许多强悍的贡献者...,将之前定义的UserViewSet和GroupViewset补充注释 4.在urls.py添加get_schema_view辅助函数 5.启动Django服务,检测Swagger接口文档配置效果 环境说明...SECURITY_DEFINITIONS': {         "basic":{             'type': 'basic'         }     },     # 如果需要登录才能够查看接口文档, 登录的链接使用restframework...'DOC_EXPANSION': 'list',     # 接口文档中方法列表以首字母升序排列     'APIS_SORTER': 'alpha',     # 如果支持json提交, 则接口文档包含

4.1K40

Python面试题大全(三):Web开发(Flask、爬虫)

145.Session,Cookie,JWT的理解 146.简述Django请求生命周期 147.用的restframework完成api发送时间时区 148.nginx,tomcat,apach到都是什么...在django,路由是浏览器访问服务器时,先访问的项目中的url,再由项目中的url找到应用url,这些url是放在一个列表里,遵从从前往后匹配的规则。...它是一个Web服务器(nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范。 要注意WSGI/uwsgi/uWSGI这三个概念的区分。 WSGI是一种通信协议。...1.Django耗时的任务用一个进程或者线程来执行,比如发邮件,使用celery. 2.部署django项目是时候,配置文件设置了进程和协程的相关配置。...urllib2: urllib2.urlopen可以接受一个Request对象或者url,(在接受Request对象时,并以此可以来设置一个URL的headers),urllib.urlopen只接收一个

91720

drf的接口文档生成与管理

3、接口文档参数Description需要在模型类或序列化器类的字段以help_text选项定义,例如 在模型类定义 class EnvironmentView(models.Model):...': { "basic": { 'type': 'basic' } }, # 如果需要登录才能够查看接口文档, 登录的链接使用 restframework...4.6 更多配置及说明 4.6.1 get_schema_view的配置 函数 get_schema_view 的作用是返回自动生成 API 文档的视图类, 该函数接受以下参数: info: Swagger...cache_page 实现开箱即用的缓存功能, 只需要配置对应的参数即可启用, 对应参数解释如下: cache_timeout: 用于指定缓存的生存时间 cache_kwargs: 用于传递 cache_page 允许接受的非位置参数..., cache(指定 cache backend), key_prefix(缓存key的前缀) 等等, 详见django官方文档 需要注意的是, 由于 drf-yasg 支持针对不同用户返回不一样的

4.6K10

Python 最常见的 120 道面试题解析

Python 的局部变量和全局变量是什么? python 是否区分大小写? Python 的类型转换是什么? Python 中有哪些内置类型? python 是否需要缩进?...如何在 Python 随机化列表的项目? 什么是 python 迭代器? 如何在 Python 中生成随机数? range&xrange 有什么区别? 你如何在 python 写注释?...如何在 Python 实现多线程? 在 python 编译和链接的过程是什么? 什么是 Python 库?举几个例子。 什么是拆分用于? 如何在 python 中导入模块?...提到 Django,Pyramid 和 Flask 之间的差异。 讨论 Django 架构。 解释如何在 Django 设置数据库。 举例说明如何在 Django 编写 VIEW?...提及 Django 模板的组成部分。 在 Django 框架解释会话的使用? 列出 Django 的继承样式。

6.3K20

Django+Vue开发生鲜电商平台之5.使用DRF实现商品列表页和过滤

但是从代码可以看到: 通过在新建列表、其元素为单个商品信息组成的字典,一个一个地添加,显得很麻烦,可进行改进; 有些字段不能直接用json.dumps()方法序列化,datetime,会报错,商品列表视图修改为如下时...urls.py配置路径: from django.conf.urls import url, include from django.views.static import serve from rest_framework.documentation...还支持定义自己的自定义解析器,这使您可以灵活地设计API接受的媒体类型。...''' name = django_filters.CharFilter(field_name="name", lookup_expr='contains') min_price = django_filters.NumberFilter...还可以通过在字段前面加上各种字符来限制搜索行为search_fields: '^'开始搜索 '='完全匹配 '@'全文搜索(当前仅支持Django的MySQL后端) '$'正则表达式搜索 修改如下:

5.3K20

django model 条件过滤 queryset.filter(**condtions)用法详解

‘%aaa%’ __icontains 包含 忽略大小写 ilike ‘%aaa%’,但是对于sqlite来说,contains的作用效果等同于icontains。...__isnull=True/False 如果参数是字典, condtions: {‘date__lt’: ‘2018-05-22’,’status’: ‘未支付’,’name__exact’:...的objects.filter()方法匹配多个关键字 介绍: 今天在使用django的时候忽然想用到,如何匹配多个关键字的操作,我们知道django有一个objects.filter()方法,我们可以通过如下一句代码实现匹配数据库...key1|key2’ select title from data where title like ‘%key1%’ or like ‘%key2%’ 以上的两种sql语句都是选择出title属性存在...__startswith=’key2′)) 首先导入django的Q方法然后在filter添加对应的匹配即可 以上这篇django model 条件过滤 queryset.filter(**condtions

4.3K10

【16】进大厂必须掌握的面试题-100个python面试

python是否区分大小写? 答:是的。Python是区分大小写的语言。 Q12。什么是Python的类型转换? 回答:类型转换是指将一种数据类型转换为另一种数据类型。...回答: Pickle模块接受任何Python对象并将其转换为字符串表示形式,并使用转储函数将其转储到文件,此过程称为pickling。...图: Python面试问题– Django体系结构 开发人员提供模型,视图和模板,然后将其映射到URL,而Django发挥了神奇的作用将其提供给用户。 Q77。说明如何在Django设置数据库。...举例说明如何在Django编写VIEW?...提及Django模板的组成。 回答: 模板是一个简单的文本文件。它可以创建任何基于文本的格式,XML,CSV,HTML等。

16.2K30

动态设置django的model field的默认值操作步骤

问题背景 django的model field需要动态设置默认值,具体案例如下: 原始代码如下,model是Application,其中字段ignore_fort的默认值设置为False class Application...ignore_fort = models.BooleanField(default=False) 然而现在有这样一个需求:default需要根据某个变量ENV进行动态设置,如果ENV是UAT或者FAT(不区分大小写...ModelChoiceField:过滤查询集并将默认值设置为对象 我有一个Django Form类定义喜欢这个在Models: class AccountDetailsForm(forms.Form...=1) 我试过指定adminuser作为默认值在窗体,(它与其他标准表单字段,CharField工作): adminuser = User.objects.filter(account=accountid...覆盖init方法并接受新的关键字参数 class AccountDetailsForm(forms.Form): ...

3K50

django模型

每个模型对 应数据库唯一的一张表 如何编写模型 模型:每个模型都用一个类表示,该类继承自django.db.models.Model。...列 每个模型只能有一个字段指定primary_key=True (无论是显式声明还是自动添加) 字段的自述名 每个字段类型都接受一个可选的位置参数——字段的自述名,如果没有给定自述名, Django...模型meta选项 使用内部的class Meta 定义模型的元数据,例: from django.db import models class User(models.Model): username...敏感的匹配 contains 大小写敏感的包含指定字符串 icontains 大小写不敏感的包含指定字符串 startswith, endswith 以指字字符串开头或结尾 istartswith, iendswith...如果您在某些情 况下使用查询集的结果,当您最初获取数据时不知道是否需要这些特定字段,可以告诉 Django不要从数据库检索它们。

3.1K20

这样就可以自由的使用Django

给你生成好的视图文件,比如 views.py 里出现,如果单独写一个文件, orm_demo.py,把上述代码贴过来,然后执行 python orm_demo.py 就会报错,下面带你顺藤摸瓜来解决这个问题...() 仅当您的代码真正独立时才需要调用,因此,避免将可重用的应用程序逻辑放在独立的脚本,如果实在无法避免的话,你可以这样做: if __name__ == '__main__': import...,对应SQL:select * from User where name not like '%sre%',SQL中大小写不敏感 User.objects.exclude(name__contains=..."sre") # 不匹配,大小写不敏感,对应SQL:select * from User where name not like '%sre%',SQL中大小写不敏感 User.objects.exclude...# filter单列、查询单列,正常values_list给出的结果是个列表,里边里边的每条数据对应一个元组,当只查询一列时,可以使用flat标签去掉元组,将每条数据的结果以字符串的形式存储在列表

58930

【经验分享】Django开发中常用到的数据库操作总结

查询类操作1)查询所有的结果,相当 sql 的 select * fromlist = Test.objects.all()2)条件查询,filter 相关 sql 的 where,用于过滤查询结果传多个参数...Test.objects.filter(Q(date=’2018-10-10 00:00:00’),Q(name__startswith=’h’) | Q(name__startswith=’p’)filter() 等函数可以接受...model查询出来的结构类型为QuerySet,本质是一个查询对象集。...从DB查询出来的是对象集,可以考虑django-rest-framework 库的serializers类,具体可参考:Tutorial 1: 序列化---查询条件总结字段名__op:__exact 精确等于...like ‘aaa’__iexact精确等于忽略大小写ilike‘aaa’__contains 包含 like ‘%aaa%’__icontains包含忽略大小写ilike‘%aaa%’,但是对于sqlite

63220
领券