kiedyś podążać ten wzór w Django Framework spoczynku (DRF) 2:W jaki sposób przesłonić zestaw kwerend get ModelViewSet w Django Rest Framework 3?
class Foo(models.Model):
user = models.ForeignKey(User)
class FooSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Foo
fields = ('url')
class FooViewset(viewsets.ModelViewSet):
def get_queryset(self):
return Foo.objects.filter(user=self.request.user)
serializer = FooSerializer
model = Foo # <-- the way a ModelViewSet is told what the object is in DRF 2
[ in urls.py]
from rest_framework import routers
router = routers.DefaultRouter()
router.register('Foo', views.FooViewSet)
W DRF 3, teraz uzyskać:
AssertionError at/
`base_name` argument not specified, and could not automatically
determine the name from the viewset, as it does not have a
`.queryset` attribute.
Jak get_queryset
nadpisane dla instancji rest_framework.viewsets.ModelViewSet
?
Proponuję użyć mojej odpowiedzi, jest dość czystszy. Spróbuj. – levi
Oto odpowiednia dokumentacja: http://www.django-rest-framework.org/api-guide/routers/#usage – Seth
Wpadłem w ten sam problem. Nie mam twojej odpowiedzi. Czy mógłbyś podać odpowiedź na szczegóły? – Amir