Это ответ от Django при вызове axios api во внешнем интерфейсе (массив объектов JSON).
[
{
"id": 1,
"title": "How to create a django-react app",
"body": "You should first do this stuff and that"
},
{
"id": 5,
"title": "How to connect django with react",
"body": "Get this and that stuff"
}
]
Но это ответ, который я хочу (объект JSON объектов JSON).Является ли словарь Python таким же, как объект Javascript или Hashmap?Есть ли какое-то промежуточное программное обеспечение, которое я могу использовать для преобразования формы?Это работа, которую должен выполнять serializers.py
или views.py
?Как я могу изменить ответ из массива объектов на объект или объекты?
{
1: {
"id": 1,
"title": "How to create a django-react app",
"body": "You should first do this stuff and that"
},
5: {
"id": 5,
"title": "How to connect django with react",
"body": "Get this and that stuff"
}
}
serializers.py
class ArticleSerializer(serializers.ModelSerializer):
class Meta:
model = Article
fields = '__all__'
views.py
class ArticleViewSet(ViewSet):
queryset = Article.objects.all()
def list(self, request):
serializer = ArticleSerializer(ArticleViewSet.queryset, many=True)
return Response(serializer.data)
def retrieve(self, request, pk=None):
article = get_object_or_404(ArticleViewSet.queryset, pk=pk)
serializer = ArticleSerializer(article, many=False)
return Response(serializer.data)