Skip to content

Instantly share code, notes, and snippets.

@bismitaguha
Created July 28, 2020 13:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bismitaguha/1e51a88e0e7adc16ce4e52b12091f856 to your computer and use it in GitHub Desktop.
Save bismitaguha/1e51a88e0e7adc16ce4e52b12091f856 to your computer and use it in GitHub Desktop.
from rest_framework.response import Response
from osp.models import (
Choice, Checkbox, Dropdown,
Paragraph, ShortAnswer,
Date, Time, FileUpload
)
from osp.serializers.fields import (
ChoiceSerializer, CheckboxSerializer, DropdownSerializer,
ParagraphSerializer, ShortAnswerSerializer, ParagraphSerializer,
DateSerializer, TimeSerializer, FileUploadSerializer
)
def get_model_and_serializer(data_type):
if data_type == 'char':
model = ShortAnswer
serializer = ShortAnswerSerializer
elif data_type == 'text':
model = Paragraph
serializer = ParagraphSerializer
elif data_type == 'choice':
model = Choice
serializer = ChoiceSerializer
elif data_type == 'checkbox':
model = Checkbox
serializer = CheckboxSerializer
elif data_type == 'dropdown':
model = Dropdown
serializer = DropdownSerializer
elif data_type == 'date':
model = Date
serializer = DateSerializer
elif data_type == 'time':
model = Time
serializer = TimeSerializer
elif data_type == 'file':
model = FileUpload
serializer = FileUploadSerializer
return {
"model": model,
"serializer": serializer
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment