J'essaie de créer une API d'application Web. Je veux faire une demande d'API où plusieurs identifiants peuvent être soumis. Le django rest framework tutorial montre comment obtenir tous les enregistrements d'un modèle. Par exemple, http://127.0.0.1:8000/snippets/ renverra tous les enregistrements d'extraits. Le tutoriel montre également comment récupérer un seul élément d'un modèle. http://127.0.0.1:8000/snippets/2/ renverra uniquement un enregistrement d'extrait avec pk = 2.Demande plusieurs ID de l'API du framework Django REST
J'aimerais pouvoir demander plusieurs enregistrements, mais pas tous les enregistrements.
Comment puis-je modifier ce code afin que je puisse demander plusieurs extraits?
extraits/urls.py
from django.conf.urls import url
from snippets import views
urlpatterns = [
url(r'^snippets/$', views.snippet_list),
url(r'^snippets/(?P<pk>[0-9]+)/$', views.snippet_detail),
]
extraits/views.py
def snippet_detail(request, *pk):
try:
snippet = Snippet.objects.filter(pk__in=pk)
except Snippet.DoesNotExist:
return HttpResponse(status=404)
if request.method == 'GET':
serializer = SnippetSerializer(snippet)
return JSONResponse(serializer.data)
Plusieurs extraits basés sur quoi? Quels seraient vos critères pour tirer ou ne pas tirer un extrait? – Gocht
@Gocht Donc, comme ... http://127.0.0.1:8000/snippets/2;3;4/ si je voulais des extraits avec les ID 2, 3 et 4 –