2016-06-30 5 views
1

ich noch Django REST framework lerne, mit HTML Vorlagen zu erwürgen, bitte helfen, nicht meine Keywords Rendering:Wie html in django Rest Rahmen machen

My View

class KeywordList(generics.ListAPIView): 
    renderer_classes = [TemplateHTMLRenderer] 
    template_name = "chapter/blog-post_2.html" 
    serializer_class = KeywordSerializer 

    def get_queryset(self): 
     detal = self.kwargs['id'] 
     queryset = Keyword.objects.filter(chapter=detal) 
     return Response({'keyword': query set}) 

Meine Html:

<div class="row thumbs gap-xs"> 
<div class="col-xs-6 thumb list"> 
<figure > 
<figcaption class="text-overlay"> 
<div class="info"> 
    {% for keyword in keywords %} 
    <a href="#modal-work03" data-toggle="modal"><h4>{{keyword}}</h4> </a> 
    {% endfor %} 
</div> 
</figcaption> 
<a href="#modal-work03" data-toggle="modal"><img src="{% static  'chapter/images/art/work17.jpg' %}" alt=""></a> 
</figure> 
</div> 
+1

Ich möchte vorschlagen, dass Sie REST wahrscheinlich nicht korrekt verwenden. Django REST Framework ist das Extrahieren und Eingeben von _data_, nicht die Darstellung und Ansicht der Daten. Etwas downsteam sollte es formatieren, wie ein JavaScript-Frontend (ReactJS, AngularJS, JQuery oder einfaches altes Javascript) oder eine mobile App oder sogar eine Desktop-App. –

Antwort

0

In Ihrer Antwort definieren Sie Schlüsselwort als keyword, aber verweisen Sie es als keywords in der Vorlage. Ich denke wirklich, Sie sollten keyword in Ihrer Antwort zu keywords ändern, da dies in der gegebenen Situation logischeren Sinn macht. Mit dieser Änderung sollte die Vorlage die Differenz aufheben und for keyword in keywords sollte funktionieren.

Auch in Ihrer Antwort geben Sie query set statt ein. Das wird es auch brechen.

Probieren Sie diese Fixes und sehen Sie, ob es besser funktioniert.

+0

Dies ist ein Fehler: Der Antwortinhalt muss gerendert werden, bevor er wiederholt werden kann. – art

Verwandte Themen