Django Rest - пользовательский JSON на основе прикладной логики - PullRequest
0 голосов
/ 04 июня 2018

Я пытаюсь создать пользовательский JSON в инфраструктуре отдыха Django.(Используемый метод - serializers.ModelSerializer).Я не уверен, какой подход используется для достижения этой цели.

Логика: проверка на наличие некоторых данных в модели и на основе этих данных дальнейший расчет выполняется по другой модели.Это будет продолжаться до тех пор, пока не будет получен желаемый результат.Как мне настроить мой сериализатор и viewset.

class DataPointSerializer(serializers.ModelSerializer): 
    class Meta:
        model = DataPoint
        fileds = (what goes here ?)

    def to_representation(self,instance):
        model_one = model_one.objects.all()
        calculation using model_one
        model_two.objects.filter(by calculated data)
        construct JSON
        return  JSON

Я хотел бы знать, какой подход будет использован для выполнения этой задачи.

TK-01

   `def get_representation(self,instance): 
    data = []
    Shifts = Shift.objects.all()
    for shift in Shifts:
        data.append(shift.shift_name)
    return data`

TK-02

Я пытаюсь создать что-то вроде этого Ссылка , но вместо APIView мне это нужно в сериализаторах

1 Ответ

0 голосов
/ 04 июня 2018

Сериализатор будет выглядеть следующим образом:

class DataPointSerializer(serializers.ModelSerializer):
    representation = serializers.SerializerMethodField()

    class Meta:
        model = DataPoint
        fileds = ('representation',)

    def get_representation(self,instance):
        data = []
        model_one = model_one.objects.all()
        calculation using model_one
        model_two.objects.filter(by calculated data)
        construct JSON
        data.append(construct JSON)
        return data
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...