Mein Problem bezieht sich auf Django RestFramework und beschreibt, wie Elemente gruppiert werden.Django RestFramework-Gruppe von
Das ist mein serializers.py
from collaborativeAPP.models import *
from rest_framework import serializers
class VocabSerializer(serializers.ModelSerializer):
term_word = serializers.CharField(source='term.word',read_only=True)
kwdGroup = serializers.StringRelatedField()
class Meta:
model = Vocab
fields = ('id','term_word', 'meaning','kwdGroup')
class TermSerializer(serializers.ModelSerializer):
word = serializers.CharField(read_only=True)
class Meta:
model = Term
fields = ('url', 'word')
Die folgende json es das tatsächliche Ergebnis ist:
{"results":[
{
"id": 5,
"term_word": "word1",
"meaning": "Text1"
"kwdGroup": "A"
},
{
"id": 6,
"term_word": "word2",
"meaning": "Text2"
"kwdGroup": "A"
},
{
"id": 7,
"term_word": "word3",
"meaning": "Text3"
"kwdGroup": "A"
}
]}
Wie Sie feststellen können "kwdGroup" ist ein sich wiederholendes Element, das ich-Gruppe, die .
würde ich zu einer Gruppe wie von kwdGroup
{"A":[
{
"id": 5,
"term_word": "word1",
"meaning": "Text1"
},
{
"id": 6,
"term_word": "word2",
"meaning": "Text2"
},
{
"id": 7,
"term_word": "word3",
"meaning": "Text3"
}
]
}
Ich bin für Antworten auf http://www.django-rest-framework.org/ auf api Führung suchen, aber ich habe Schwierigkeiten, einen Ansatz zu führen, mit ihm zu finden. Teilen Sie das gleiche Problem? Hast du einen Vorschlag wie kann ich das machen? Haben Sie ein Beispiel, das sich mit der Gruppierung von Elementen mit Django RestFramework befasst?
Vielen Dank im Voraus.
Wie erhalten Sie Ihr "tatsächliches" Ergebnis? Fügen Sie den Code der Ansicht oder eine Abfrage, die Sie verwenden, um die Daten –
Sylvain, für meine Frage, die Sie brauchen, um den Code nicht zu bewerten. Wenn Sie das django RestFramework kennen, müssen Sie nur wissen, ob DjangoRestFrameWork diese Fähigkeit bietet oder nicht. Es gibt mehrere Skripte, die zum Erstellen dieses JSON beitragen (serializer.py, models.py, views.py, urls).py) und es macht keinen Sinn, sie alle zu zeigen. Was ich zeigen kann, ist der Serializer, der jetzt aktualisiert wird. – ePascoal
Ich bin kürzlich in dasselbe Problem geraten. Ich habe nur den Serializer gemieden und die Methode get der Methode übersprungen, die JSON-Ausgabe direkt zu erzeugen. Ich würde gerne wissen, ob es einen Weg gibt, es ordentlich mit Serialisierern zu machen. Ich hatte eigentlich 2 Ebenen der Gruppierung zu tun. –