为了账号安全,请及时绑定邮箱和手机立即绑定

如何在模型中添加字段的长度以进行排序?

如何在模型中添加字段的长度以进行排序?

大话西游666 2021-03-31 14:10:59
如何添加排序的字段长度Model?我有一个IPv4Manage模型:class IPv4Manage(models.Model):    """    ipv4    """    ip = models.GenericIPAddressField(help_text="ip")    ...    class Meta:        ordering = ['ip']在Meta中,我们可以使用字段设置排序条件。但是我有一个问题,我可以在中设置ip订单的长度Model吗?我知道是否可以在APIView中使用Prefetch或extra来指定的长度ip并对其进行排序。...extra(select={'length':'Length(ip)'}).order_by('length', 'ip')但是我们可以在中设置顺序参数的长度Model吗?编辑1我创建了一个经理:class IPv4ManageManager(models.Manager):    def get_queryset(self):        return super().get_queryset().annotate(length=Length('ip')).order_by('length', 'ip')我将其添加到默认的Manager中,对我有用。class IPv4Manage(models.Model):    """    ipv4    """    ip = models.GenericIPAddressField(help_text="ip")    ...    objects = IPv4ManageManager()    class Meta:        ordering = ['ip']
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 160 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号