Ich verwende das Django REST Framework Toolkit mit Django 1.11 und ich versuche die Ergebnisse gegen die URL zu filtern. Hier ist mein Setup:Django REST Framework - Filterung gegen die URL
models.py:
from django.db import models
class Package(models.Model):
name = models.CharField(max_length=255, unique=True)
def __str__(self):
return self.name
serializers.py:
from rest_framework import serializers
from .models import Package
class PackageSerializer(serializers.ModelSerializer):
class Meta:
model = Package
fields = ('name',)
views.py:
from rest_framework import viewsets
from .models import Package
from .serializers import PackageSerializer
class PackageViewSet(viewsets.ReadOnlyModelViewSet):
serializer_class = PackageSerializer
queryset = Package.objects.all()
urls.py
from django.conf.urls import url, include
from django.contrib import admin
from rest_framework import routers
router = routers.DefaultRouter()
router.register(r'package', views.PackageViewSet)
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^api/v1/', include(router.urls)),
]
Zur Zeit, als ich diese verwenden kann ich die Ergebnisse durch das ID-Feld filtern:
http://127.0.0.1:8000/api/v1/package/1/
Ich hoffe, die Ergebnisse durch das Namensfeld meines Paket Modell statt zu filtern mit diesem:
http://127.0.0.1:8000/api/v1/package/basic/
Wie würde ich das erreichen können?
Das ist genau ich bin im Begriff zu antworten. Prost – Satendra
Und ich dachte Google war schnell ... danke für die schnelle Antwort und den Link zu der Dokumentation. – RMP