python - 使用 Django REST 框架 SearchFilter 解码(和等同)特殊字符?
问题描述
我在后端实现了一个 Django Rest Framework SearchFilter,它在大多数情况下都能正常工作。这是views.py中的代码结构:
class JobsViewSet(viewsets.ModelViewSet):
queryset = Jobs.objects.all()
serializer_class = JobSerializer
filter_backends = [filters.SearchFilter]
search_fields = ['^name', '^job_type']
唯一剩下的问题是,当发送带有特殊字符的 get 请求时,例如瑞典字母 å,Django 无法识别 å 与 Å 仅在小写时是相同的字母(例如 a 和 A) . 在来自前端的 GET 调用中,å 转换为小写的 %C3%A5 和大写的 %C3%85。
如果职位名称以大写字母开头(如Återvinning中) ,这将导致搜索框找不到以字母åäö开头的职位。有谁知道使过滤器理解并等同于特殊字符的大写和小写字母的解决方案?类似于 UTF-8 解码的东西?
我在REST framework 文档和 Stack Overflow 上都在寻找答案,但没有任何运气。
顺便说一句,Stack Overflow 的新手,我希望我的格式正确!
解决方案
推荐阅读
- c# - 使用 C# 为 AD 中的现有帐户设置新的 AccountExpirationDate
- elasticsearch - 当值很大时,Elasticsearch 在聚合中返回错误的总和
- jmeter - Jmeter - 如何在结果 csv 文件输出中获取可调用语句的行数
- javascript - 服务工作者。如何在低连接中使用缓存
- azure - 使用 Azure 自动化扩展 Azure 节点池
- java - 无法读取 Excel 中的所有行 - Java
- google-chrome-extension - 从内部网络服务器更新 (Windows)
- mongodb - 如何从原始数据库中的所有文档中减去特定数字
- ios - 为什么没有为 iOS Firebase 动态链接启用通用链接?
- conan - 创建柯南包而不复制源