【发布时间】:2021-02-07 20:08:40
【问题描述】:
我需要使用带有可选参数的路径,以通过 srting 指定用户,对于所有用户,请求看起来像 'api/users/specific_username' 或 'api/users'
网址:
router = DefaultRouter()
router.register(r'users', MyUserViewSet, basename='user-me')
观看次数:
class UserViewSet(viewsets.ModelViewSet):
serializer_class = UserSerializer
def get_queryset(self):
queryset = User.objects.all()
if self.kwargs['username']:
username=self.request.GET.get('username')
queryset = User.objects.filter(username=username)
return queryset
username=self.kwargs['username']
返回 KeyError
username=self.request.GET.get('username')
返回无
【问题讨论】:
-
见stackoverflow.com/questions/56939521/… 你需要将
username添加到寄存器中的url路径
标签: python-3.x django django-rest-framework django-views