python - 如何在 Django ORM Query 中使用长度方法
问题描述
在下面的类中,我需要显示 25 以上的名称长度和国家 =UK
class Emp(models.Model):
name=models.CharField(max_length=2000)
country=models.CharField(max_length=1000)
我试过这个,但不工作
from django.db.models import CharField
from django.db.models.functions import Length
CharField. register_lookup(Length, 'length')
result = Emp.objects.filter(country='UK','name__length__gte=10)
解决方案
你可以试试这个;
from django.db.models.functions import Length
result = Emp.objects.annotate(name_length=Length("name")).filter(country='UK', name_length__gte=25)
见文档
推荐阅读
- python - 字符串作为关键字参数,并将 str.partition() 输出中的多个 dict 组合到一个 dict
- spring-boot - jhipster 登录页面未显示为 0auth 2.0
- selenium - 将存储字符串和硬写字符串与 If 语句进行比较
- tcpdf - tcpdf 的 imageSVG() 方法无法正确渲染 svg 文件
- reactjs - 在 react 和 electron 上通过“网站的安全证书”
- algorithm - 跳过已预订的时段并重新安排时段
- opengl - 如何实现着色器来创建高光/阴影?
- angular2-routing - Angular2 环绕组件作为字符串
- php - Laravel 显示验证错误
- azure-devops - reactjs中的VSTS发布定义