:py:mod:`api.views` =================== .. py:module:: api.views Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: api.views.TextInFilter api.views.NumInFilter api.views.UserViewSet api.views.ProjectAnnotateEntitiesViewSet api.views.ProjectGroupFilter api.views.ProjectGroupViewSet api.views.AnnotatedEntityFilter api.views.AnnotatedEntityViewSet api.views.MetaTaskValueViewSet api.views.MetaTaskViewSet api.views.MetaAnnotationViewSet api.views.DocumentViewSet api.views.EntityViewSet api.views.RelationFilter api.views.RelationViewSet api.views.EntityRelationViewSet api.views.ConceptDBViewSet api.views.VocabularyViewSet api.views.ModelPackViewSet api.views.DatasetViewSet api.views.ResetPasswordView api.views.ResetPasswordView Functions ~~~~~~~~~ .. autoapisummary:: api.views.index api.views.get_anno_tool_conf api.views.prepare_documents api.views.prepare_documents_bg api.views.prepare_docs_bg_tasks api.views.prepare_docs_bg_task api.views.add_annotation api.views.add_concept api.views.import_cdb_concepts api.views._submit_document api.views.submit_document api.views.save_models api.views.get_create_entity api.views.create_dataset api.views.update_meta_annotation api.views.annotate_text api.views.download_annos api.views.behind_reverse_proxy api.views.version api.views.concept_search_index_available api.views.search_solr api.views.upload_deployment api.views.cache_project_model api.views.cache_modelpack api.views.model_loaded api.views.metrics_jobs api.views.remove_metrics_job api.views.view_metrics api.views.cdb_cui_children api.views.cdb_concept_path api.views.generate_concept_filter_flat_json api.views.generate_concept_filter api.views.cuis_to_concepts api.views.project_progress api.views.project_admin_projects api.views.project_admin_detail api.views.project_admin_create api.views.project_admin_clone api.views.project_admin_reset Attributes ~~~~~~~~~~ .. autoapisummary:: api.views.logger api.views.logger api.views.cat .. py:data:: logger from environs import Env env = Env() env.read_env("/home/ubuntu/projects/MedAnno/MedAnno/env_umls", recurse=False) print(os.environ) .. py:data:: logger .. py:data:: cat .. py:function:: index(request) .. py:class:: TextInFilter Bases: :py:obj:`django_filters.rest_framework.BaseInFilter`, :py:obj:`django_filters.rest_framework.CharFilter` .. py:class:: NumInFilter Bases: :py:obj:`django_filters.rest_framework.BaseInFilter`, :py:obj:`django_filters.rest_framework.NumberFilter` .. py:class:: UserViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` API endpoint that allows users to be viewed or edited. .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'put'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['username'] .. py:class:: ProjectAnnotateEntitiesViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'put'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['members', 'dataset', 'id', 'project_status', 'annotation_classification'] .. py:method:: get_queryset() .. py:class:: ProjectGroupFilter Bases: :py:obj:`django_filters.rest_framework.FilterSet` .. py:class:: Meta .. py:attribute:: model .. py:attribute:: fields :value: ['id', 'name', 'description'] .. py:attribute:: id__in .. py:class:: ProjectGroupViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['id'] .. py:attribute:: filterset_class .. py:class:: AnnotatedEntityFilter Bases: :py:obj:`django_filters.rest_framework.FilterSet` .. py:class:: Meta .. py:attribute:: model .. py:attribute:: fields :value: ['id', 'user', 'project', 'document', 'entity', 'validated', 'deleted'] .. py:attribute:: id__in .. py:class:: AnnotatedEntityViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_class .. py:class:: MetaTaskValueViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'head', 'post', 'put'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: MetaTaskViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'head', 'post', 'put'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: MetaAnnotationViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'head', 'post', 'put', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['id', 'annotated_entity', 'validated'] .. py:class:: DocumentViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['dataset'] .. py:class:: EntityViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'head'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: RelationFilter Bases: :py:obj:`django_filters.rest_framework.FilterSet` .. py:class:: Meta .. py:attribute:: model .. py:attribute:: fields :value: ['label'] .. py:attribute:: id__in .. py:class:: RelationViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'head'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_class .. py:class:: EntityRelationViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'put', 'head', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:attribute:: filterset_fields :value: ['project', 'document'] .. py:class:: ConceptDBViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'head', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:method:: perform_create(serializer) .. py:class:: VocabularyViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'head', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: ModelPackViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'head', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: DatasetViewSet Bases: :py:obj:`rest_framework.viewsets.ModelViewSet` ViewSet for managing datasets. File Schema Requirements: - Format: .csv or .xlsx file - Required columns: * name: A unique identifier for each document * text: The free-text content to annotate Example CSV: name,text doc001,"First document text" doc002,"Second document text" .. py:attribute:: permission_classes .. py:attribute:: http_method_names :value: ['get', 'post', 'put', 'patch', 'delete'] .. py:attribute:: queryset .. py:attribute:: serializer_class .. py:class:: ResetPasswordView Bases: :py:obj:`django.contrib.auth.views.PasswordResetView` .. py:attribute:: email_template_name :value: 'password_reset_email.html' .. py:attribute:: subject_template_name :value: 'password_reset_subject.txt' .. py:method:: post(request, *args, **kwargs) .. py:class:: ResetPasswordView Bases: :py:obj:`django.contrib.auth.views.PasswordResetView` .. py:attribute:: email_template_name :value: 'password_reset_email.html' .. py:attribute:: subject_template_name :value: 'password_reset_subject.txt' .. py:method:: post(request, *args, **kwargs) .. py:function:: get_anno_tool_conf(_) .. py:function:: prepare_documents(request) .. py:function:: prepare_documents_bg(request) .. py:function:: prepare_docs_bg_tasks(_) .. py:function:: prepare_docs_bg_task(request, proj_id) .. py:function:: add_annotation(request) .. py:function:: add_concept(request) .. py:function:: import_cdb_concepts(request) .. py:function:: _submit_document(project, document) .. py:function:: submit_document(request) .. py:function:: save_models(request) .. py:function:: get_create_entity(request) .. py:function:: create_dataset(request) Upload a dataset and kick off document creation for each Doc. The dataset should be dict of form: { 'name': ['name1', 'name2', 'name3', ... ], 'text': ['text1...', 'text2...', 'text3...', ... ] } Args: request: the HTTP request Response: An HTTP resonse with the id of the created dataset .. py:function:: update_meta_annotation(request) .. py:function:: annotate_text(request) .. py:function:: download_annos(request) .. py:function:: behind_reverse_proxy(_) .. py:function:: version(_) .. py:function:: concept_search_index_available(request) .. py:function:: search_solr(request) .. py:function:: upload_deployment(request) .. py:function:: cache_project_model(request, project_id) .. py:function:: cache_modelpack(request, modelpack_id) .. py:function:: model_loaded(_) .. py:function:: metrics_jobs(request) .. py:function:: remove_metrics_job(request, report_id) .. py:function:: view_metrics(request, report_id) .. py:function:: cdb_cui_children(request, cdb_id) .. py:function:: cdb_concept_path(request) .. py:function:: generate_concept_filter_flat_json(request) .. py:function:: generate_concept_filter(request) .. py:function:: cuis_to_concepts(request) .. py:function:: project_progress(request) .. py:function:: project_admin_projects(request) Get all projects where the user is a project admin. .. py:function:: project_admin_detail(request, project_id) Get, update, or delete a project (only if user is project admin). .. py:function:: project_admin_create(request) Create a new project (user must be authenticated). .. py:function:: project_admin_clone(request, project_id) Clone a project (user must be authenticated and have permission). .. py:function:: project_admin_reset(request, project_id) Reset a project (clear all annotations) - only if user is project admin. This is equivalent to the reset_project admin action.