Skip to content
Snippets Groups Projects
Commit c57844cb authored by Mattia Mancini's avatar Mattia Mancini
Browse files

Visualize workflow object on readonly access

parent 9b0cf5c6
No related branches found
No related tags found
1 merge request!1Workflow related serializer
Pipeline #8246 passed
...@@ -30,6 +30,23 @@ class TaskSerializer(serializers.ModelSerializer): ...@@ -30,6 +30,23 @@ class TaskSerializer(serializers.ModelSerializer):
'inputs','outputs','status_history') 'inputs','outputs','status_history')
class TaskReadSerializer(serializers.ModelSerializer):
status_history = serializers.StringRelatedField(
many=True,
required=False,
)
workflow = WorkflowSerializer(read_only=True)
class Meta:
model = Task
fields = ('id','task_type','taskID',
'desired_predecessor_id','predecessor','successor',
'project','sas_id','priority','purge_policy','skip',
'workflow',
'status','desired_status',
'inputs','outputs','status_history')
class StatusSerializer(serializers.ModelSerializer): class StatusSerializer(serializers.ModelSerializer):
class Meta: class Meta:
......
...@@ -14,7 +14,7 @@ from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger ...@@ -14,7 +14,7 @@ from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from .models import Task, Status, Workflow, LogEntry from .models import Task, Status, Workflow, LogEntry
from django.db.models import Q from django.db.models import Q
from .serializers import TaskSerializer, WorkflowSerializer, LogEntrySerializer from .serializers import TaskSerializer, TaskReadSerializer, WorkflowSerializer, LogEntrySerializer
from .forms import FilterForm from .forms import FilterForm
from .services import algorithms from .services import algorithms
...@@ -133,7 +133,11 @@ class TaskListViewAPI(generics.ListCreateAPIView): ...@@ -133,7 +133,11 @@ class TaskListViewAPI(generics.ListCreateAPIView):
model = Task model = Task
queryset = Task.objects.all() queryset = Task.objects.all()
serializer_class = TaskSerializer serializer_class = TaskSerializer
def get_serializer_class(self):
if self.request.method in ['GET']:
return TaskReadSerializer
else:
return TaskSerializer
# using the Django Filter Backend - https://django-filter.readthedocs.io/en/latest/index.html # using the Django Filter Backend - https://django-filter.readthedocs.io/en/latest/index.html
filter_backends = (filters.DjangoFilterBackend,) filter_backends = (filters.DjangoFilterBackend,)
filter_class = TaskFilter filter_class = TaskFilter
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment