research package¶
Module contents¶
A reusable Django app to manage research information.
Subpackages¶
Submodules¶
research.admin module¶
-
class
research.admin.CollaboratorsInline(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
email(instance) → str¶
-
extra= 0¶
-
fields= ('user_id', 'title', 'first_name', 'last_name', 'username', 'email')¶
-
first_name(instance) → str¶
-
has_add_permission(request, instance)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
last_name(instance) → str¶
-
media¶
-
model¶ alias of
research.models.study.Study_collaborators
-
readonly_fields= ('user_id', 'title', 'first_name', 'last_name', 'username', 'email')¶
-
title(instance) → str¶
-
username(instance) → str¶
-
verbose_name_plural= 'Collaborators'¶
-
-
class
research.admin.DecadeBornListFilter(request, params, model, model_admin)¶ Bases:
django.contrib.admin.filters.SimpleListFilter-
DECADES= ('40s', '50s', '60s', '70s', '80s', '90s', '00s')¶
-
lookups(request, model_admin)¶ Returns a list of tuples. The first element in each tuple is the coded value for the option that will appear in the URL query. The second element is the human-readable name for the option that will appear in the right sidebar.
-
parameter_name= 'decade'¶
-
queryset(request, queryset)¶ Returns the filtered queryset based on the value provided in the query string and retrievable via self.value().
-
title= 'decade born'¶
-
-
class
research.admin.GroupAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
inlines= (<class 'research.admin.ScanInline'>,)¶
-
list_display= ('id', 'study_', 'title', 'description', 'mri_scan_count')¶
-
list_filter= ('title', ('study__title', <class 'research.admin.custom_titled_filter.<locals>.Wrapper'>))¶
-
media¶
-
mri_scan_count(instance: research.models.group.Group) → int¶
-
readonly_fields= ('study_', 'mri_scan_count')¶
-
search_fields= ('study__title', 'title', 'description')¶
-
study_(instance: research.models.group.Group) → str¶
-
-
class
research.admin.MeasurementDefinitionAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
list_display= ('id', 'title', 'description', 'content_type', 'n_collected')¶
-
media¶
-
n_collected(instance: research.models.measurement_definition.MeasurementDefinition) → int¶
-
-
class
research.admin.ProcedureAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
inlines= (<class 'research.admin.StudyInline'>, <class 'research.admin.ProcedureStepInline'>)¶
-
list_display= ('id', 'title', 'description', 'step_count')¶
-
media¶
-
step_count(instance: research.models.procedure.Procedure) → int¶
-
-
class
research.admin.ProcedureInline(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
can_delete= False¶
-
description(instance) → str¶
-
extra= 0¶
-
fields= ('id_link', 'title', 'description')¶
-
has_add_permission(request, instance)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
id_link(instance) → str¶
-
media¶
-
model¶ alias of
research.models.study.Study_procedures
-
readonly_fields= ('id_link', 'title', 'description')¶
-
title(instance) → str¶
-
verbose_name_plural= 'Procedures'¶
-
-
class
research.admin.ProcedureStepInline(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
can_delete= False¶
-
event_description(instance: research.models.procedure_step.ProcedureStep) → str¶
-
event_title(instance: research.models.procedure_step.ProcedureStep) → str¶
-
event_type(instance: research.models.procedure_step.ProcedureStep) → str¶
-
extra= 0¶
-
fields= ('index_link', 'event_type', 'event_title', 'event_description')¶
-
has_add_permission(request, instance: research.models.procedure_step.ProcedureStep)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
index_link(instance: research.models.procedure_step.ProcedureStep) → str¶
-
media¶
-
model¶ alias of
research.models.procedure_step.ProcedureStep
-
readonly_fields= ('index_link', 'event_type', 'event_title', 'event_description')¶
-
verbose_name_plural= 'Steps'¶
-
-
class
research.admin.ScanInline(parent_model, admin_site)¶ Bases:
django_admin_inline_paginator.admin.TabularInlinePaginated-
comments(instance) → str¶
-
description(instance) → str¶
-
download(instance) → str¶
-
echo_time(instance) → float¶
-
extra= 0¶
-
fields= ('id_link', 'subject', 'session', 'number', 'time', 'description', 'echo_time', 'inversion_time', 'repetition_time', 'spatial_resolution', 'comments', 'download')¶
-
has_add_permission(request, instance)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
id_link(instance) → str¶
-
inversion_time(instance) → float¶
-
media¶
-
model¶ alias of
django_mri.models.scan.Scan_study_groups
-
number(instance) → int¶
-
readonly_fields= ('id_link', 'subject', 'session', 'number', 'time', 'description', 'echo_time', 'inversion_time', 'repetition_time', 'spatial_resolution', 'comments', 'download')¶
-
repetition_time(instance) → float¶
-
session(instance) → str¶
-
spatial_resolution(instance) → str¶ Returns a nicely formatted representation of the scan’s spatial resolution.
Parameters: instance (django_mri.Scan_study_groups) – Scan_study_groups instance Returns: Formatted spatial resolution representation Return type: str
-
subject(instance) → str¶
-
time(instance) → datetime.datetime¶
-
verbose_name_plural= 'Scans'¶
-
-
class
research.admin.SessionInLine(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
can_delete= False¶
-
download(instance: django_mri.models.session.Session) → str¶
-
extra= 0¶
-
fields= ('id_link', 'time', 'measurement', 'scan_count', 'comments', 'download')¶
-
has_add_permission(request, instance: django_mri.models.session.Session)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
id_link(instance: django_mri.models.session.Session) → str¶
-
media¶
-
model¶ alias of
django_mri.models.session.Session
-
readonly_fields= ('id_link', 'time', 'scan_count', 'download')¶
-
scan_count(instance: django_mri.models.session.Session) → int¶
-
verbose_name_plural= 'MRI Sessions'¶
-
-
class
research.admin.StudyAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
exclude= ('subjects', 'collaborators', 'procedures')¶
-
fields= ('title', 'description', 'image', 'participant_list')¶
-
inlines= (<class 'research.admin.CollaboratorsInline'>, <class 'research.admin.ProcedureInline'>)¶
-
list_display= ('title', 'description', 'created')¶
-
media¶
-
participant_list(instance: research.models.study.Study) → str¶
-
readonly_fields= ('participant_list',)¶
-
-
class
research.admin.StudyAssociationFilter(request, params, model, model_admin)¶ Bases:
django.contrib.admin.filters.SimpleListFilter-
lookups(request, model_admin)¶ Must be overridden to return a list of tuples (value, verbose value)
-
parameter_name= 'study participation'¶
-
queryset(request, queryset)¶ Return the filtered queryset.
-
title= 'study participation'¶
-
-
class
research.admin.StudyInline(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
can_delete= False¶
-
description(instance) → str¶
-
extra= 0¶
-
fields= ('id_link', 'title', 'description')¶
-
has_add_permission(request, instance: research.models.procedure_step.ProcedureStep)¶ Return True if the given request has permission to add an object. Can be overridden by the user in subclasses.
-
id_link(instance) → str¶
-
media¶
-
model¶ alias of
research.models.study.Study_procedures
-
readonly_fields= ('id_link', 'title', 'description')¶
-
title(instance) → str¶
-
verbose_name_plural= 'Studies'¶
-
-
class
research.admin.SubjectAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
actions= ('export_csv',)¶
-
changelist_view(request, extra_context=None)¶ The ‘change list’ admin view for this model.
-
export_csv(request, queryset)¶
-
inlines= (<class 'research.admin.SessionInLine'>,)¶
-
list_display= ('id', 'id_number', 'first_name', 'last_name', 'sex', 'date_of_birth', 'dominant_hand', 'n_mri_sessions')¶
-
list_filter= ('sex', 'dominant_hand', <class 'research.admin.DecadeBornListFilter'>, <class 'research.admin.StudyAssociationFilter'>)¶
-
media¶
-
n_mri_sessions(instance: research.models.subject.Subject) → int¶
-
readonly_fields= ('n_mri_sessions',)¶
-
search_fields= ('id', 'id_number', 'first_name', 'last_name', 'date_of_birth__year')¶
-
-
class
research.admin.SubjectsInline(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline-
date_of_birth(instance)¶
-
extra= 0¶
-
first_name(instance)¶
-
id_number(instance)¶
-
last_name(instance)¶
-
media¶
-
model¶ alias of
research.models.study.Study_subjects
-
readonly_fields= ('id_number', 'first_name', 'last_name', 'sex', 'date_of_birth')¶
-
sex(instance)¶
-
verbose_name_plural= 'Subjects'¶
-
-
class
research.admin.TaskAdmin(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin-
list_display= ('id', 'title', 'description')¶
-
media¶
-
-
research.admin.custom_titled_filter(title: str)¶ Copied from SO: https://stackoverflow.com/a/21223908/4416932