флажок django-фильтра get kwarg - PullRequest
0 голосов
/ 23 октября 2019

Я хотел бы добавить флажок к этому фильтру. Если этот флажок установлен, он будет исключать записи, у которых дата в поле ext_date превышает дату, введенную пользователем в фильтр. Перепробовал кучу вещей, но, похоже, не смог туда добраться.

большое спасибо.

filters.py

class F(FilterSet):
  tax_num = CharFilter(lookup_expr='iexact')
  due_date = DateFilter(lookup_expr='lte')

  class Meta:
    model = Job
    fields = { 'client_num':['exact',],}

models.py

class Client(models.Model):
  num = models.CharField(max_length=6)
  name = models.CharField(max_length=60)


class Employee(models.Model):
  num = models.CharField(max_length=3)
  name = models.CharField(max_length=60)


class Job(models.Model):
  client_num = models.ForeignKey(Client,help_text='Select client',on_delete=models.CASCADE)
  employee_num = models.ForeignKey(Employee,help_text='Select employee',on_delete=models.CASCADE)
  tax_num = models.CharField(max_length=10)
  notes = models.TextField(max_length=248,validators=[MaxLengthValidator(248)])
  due_date = models.DateField()
  ext_date = models.DateField(blank=True,null=True)

views.py

def searchext(request):
  job_list = Job.objects.all().values('id','client_num','client_num__name','client_num__num','employee_num__name','tax_num','notes','due_date','ext_date')
  job_filter = F(request.GET, queryset=job_list)
  return render(request, 'all_list1.html', {'filter': job_filter})
...