@bituke

Можно ли переопределить поля в ViewSets?

У меня имеется сериализатор, который работает с большой моделью. На этот сериализатор написано две вьюшки:
1) которая работает с всеми полями.
2) которая должна работать только с парой полей.

На данный момент я пишу вторую вьюшку, проблема в том, что отдавать нужно пару полей, а serializer.data отдает все поля модели.
Могу ли указать, какие именно поля мне нужны в вьюшке, а не сериализаторе, дабы не писать два сериализатора?
Спасибо

class CapexSerializer(serializers.ModelSerializer):
	object_settings = CapexObjectSettingsSerializer(read_only=True)
	class Meta:
		model = models.Capex
		fields = '__all__'

class CalculationEnums(APIView):
	permission_classes = [IsAuthenticated]

	def get(self, request, pk):
		project = get_object_or_404(Project, pk=pk)
		capexs = Capex.objects.filter(project=project)
		capexs = CapexSerializer(capexs, many=True)
                ...
		data = {
			'capexs': capexs.data,
                        ...
		}
		return Response(data, status=status.HTTP_200_OK)
  • Вопрос задан
  • 39 просмотров
Решения вопроса 1
@bacon
Да, для этого надо научиться читать доки https://www.django-rest-framework.org/api-guide/se...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы