使用django过滤器按升序和降序排序

使用django过滤器按升序和降序排序,django,django-filter,Django,Django Filter,我有以下几个过滤器的代码: from .models import ProductLaptop import django_filters class ProductLaptopFilter(django_filters.FilterSet): laptops_name = django_filters.CharFilter(lookup_expr='icontains') laptops_price = django_filters.NumberFilter() la

我有以下几个过滤器的代码:

from .models import ProductLaptop
import django_filters

class ProductLaptopFilter(django_filters.FilterSet):
    laptops_name = django_filters.CharFilter(lookup_expr='icontains')
    laptops_price = django_filters.NumberFilter()
    laptops_price__gt = django_filters.NumberFilter(field_name='laptops_price', lookup_expr='gt')
    laptops_price__lt = django_filters.NumberFilter(field_name='laptops_price', lookup_expr='lt')


    class Meta:
        model = ProductLaptop
        fields = ['laptops_name', 'laptops_price', 'brand_name']
此文件的html代码:

{% load widget_tweaks %}

{% block content %}
  <form method="get">
    <div class="well">
      <h4 style="margin-top: 0">Filter</h4>
      <div class="row">
        <div class="form-group col-sm-4 col-md-3">
          {{ filter.form.laptops_name.label_tag }}
          {% render_field filter.form.laptops_name class="form-control" %}
        </div>
        <div class="form-group col-sm-4 col-md-3">
          {{ filter.form.laptops_price.label_tag }}
          {% render_field filter.form.laptops_price class="form-control" %}
        </div>
        <div class="form-group col-sm-4 col-md-3">
          {{ filter.form.brand_name.label_tag }}
          {% render_field filter.form.brand_name class="form-control" %}
        </div>
        <div class="form-group col-sm-4 col-md-3">
          {{ filter.form.laptops_price__gt.label_tag }}
          {% render_field filter.form.laptops_price__gt class="form-control" %}
        </div>
      <div class="form-group col-sm-4 col-md-3">
          {{ filter.form.laptops_price__lt.label_tag }}
          {% render_field filter.form.laptops_price__lt class="form-control" %}
        </div>

      </div>
      <button type="submit" class="btn btn-primary">
        <span class="glyphicon glyphicon-search"></span> Search
      </button>
    </div>
  </form>
{%load widget\u tweaks%}
{%block content%}
滤器
{{filter.form.laptops\u name.label\u tag}
{%render_field filter.form.laptops_name class=“form control”%}
{{filter.form.laptops\u price.label\u tag}
{%render_field filter.form.laptops_price class=“form control”%}
{{filter.form.brand_name.label_tag}
{%render_field filter.form.brand_name class=“form control”%}
{{filter.form.laptops\u price\u gt.label\u tag}
{%render\u field filter.form.laptops\u price\u gt class=“表单控制”%}
{{filter.form.laptops\u price\u lt.label\u tag}
{%render\u field filter.form.laptops\u price\uu lt class=“表单控制”%}
搜寻
这给了我一个如下的观点:

在这里,我想添加一个选项,人们可以按照升序和降序对项目进行排序。 谁能给我一些建议,我该如何实施

为此,您可以使用from
django过滤器
。在
FilterSet
类中创建此筛选器,并提供应为订购启用的所有字段