def get_object(self):
""" return the object based on pk or slug """
queryset = self.filter_queryset(self.get_queryset())
lookup_url_kwarg = self.lookup_url_kwarg or self.lookup_field
lookup_value = self.kwargs[lookup_url_kwarg]
filter_kwargs = {}
if re.match(self.lookup_pk_regexp, lookup_value):
filter_kwargs[self.lookup_field] = lookup_value
else:
filter_kwargs[self.lookup_slug_field] = lookup_value
# May raise a permission denied
obj = get_object_or_404(queryset, **filter_kwargs)
self.check_object_permissions(self.request, obj)
return obj
评论列表
文章目录