def get_queryset()

in backend/model_garden/views/labeling_task.py [0:0]


  def get_queryset(self):
    """Filters list of labeling tasks for requested dataset_id.
       If dataset_id is None(i.e. normal get request), it will return default
       query_set (a list of all labeling tasks).

       In general, It overrides and extends the class' build-in method.

       Response:
        {labeling_task_id1, labeling_task_id2, ...} for specified or all datasets.
        {HTTP_400_BAD_REQUEST} if the dataset is not found.
    """
    dataset_id_query_param = self.request.query_params.get('dataset_id', None)
    if dataset_id_query_param is not None:
      try:
        dataset = Dataset.objects.get(id=dataset_id_query_param).path
        return self.queryset.filter(dataset=dataset)
      except Dataset.DoesNotExist:
        raise ValidationError(
          detail={"message": f"Dataset with id='{dataset_id_query_param}' not found."})
    else:
      return self.queryset