research.filters package

Module contents

Filters for the app’s models.

Submodules

research.filters.subject_filter module

Definition of the SubjectFilter class.

class research.filters.subject_filter.SubjectFilter(data=None, queryset=None, *, request=None, prefix=None)

Bases: django_filters.rest_framework.filterset.FilterSet

Provides useful filtering options for the Subject model.

base_filters = {'born_after_date': <django_filters.filters.DateFilter object>, 'born_before_date': <django_filters.filters.DateFilter object>, 'dicom_patient': <django_filters.filters.NumberFilter object>, 'dominant_hand': <django_filters.filters.CharFilter object>, 'first_name': <django_filters.filters.LookupChoiceFilter object>, 'gender': <django_filters.filters.CharFilter object>, 'id': <django_filters.filters.NumberFilter object>, 'id_number': <django_filters.filters.LookupChoiceFilter object>, 'last_name': <django_filters.filters.LookupChoiceFilter object>, 'measurement': <pylabber.utils.filters.NumberInFilter object>, 'mri_session_time': <django_filters.filters.DateTimeFromToRangeFilter object>, 'procedure': <pylabber.utils.filters.NumberInFilter object>, 'questionnaire_id': <django_filters.filters.CharFilter object>, 'sex': <django_filters.filters.CharFilter object>, 'study': <pylabber.utils.filters.NumberInFilter object>, 'study_group': <pylabber.utils.filters.NumberInFilter object>}
declared_filters = {'born_after_date': <django_filters.filters.DateFilter object>, 'born_before_date': <django_filters.filters.DateFilter object>, 'dicom_patient': <django_filters.filters.NumberFilter object>, 'dominant_hand': <django_filters.filters.CharFilter object>, 'first_name': <django_filters.filters.LookupChoiceFilter object>, 'gender': <django_filters.filters.CharFilter object>, 'id_number': <django_filters.filters.LookupChoiceFilter object>, 'last_name': <django_filters.filters.LookupChoiceFilter object>, 'measurement': <pylabber.utils.filters.NumberInFilter object>, 'mri_session_time': <django_filters.filters.DateTimeFromToRangeFilter object>, 'procedure': <pylabber.utils.filters.NumberInFilter object>, 'questionnaire_id': <django_filters.filters.CharFilter object>, 'sex': <django_filters.filters.CharFilter object>, 'study': <pylabber.utils.filters.NumberInFilter object>, 'study_group': <pylabber.utils.filters.NumberInFilter object>}
filter_by_dicom_patient(queryset, name, value)

Find the subject that represents a particular DICOM Patient instance.

Parameters:
  • queryset (django.db.models.QuerySet) – The Subject queryset to filter.
  • name (str) – The name of the model field to filter on.
  • value (int) – DICOM Patient ID.
filter_by_measurement(queryset, name, value)
filter_by_procedure(queryset, name, value)
filter_by_questionnaire_id(queryset, name, value)
filter_by_studies(queryset, name, value)
filter_by_study_group(queryset, name, value)
filter_nullable_charfield(queryset, name, values)