我想用这样的路径创建一个viewset / apiview:list/<slug:entry>/
一旦我提供entry
,它将检查数据库中是否存在该条目。
*注意:在list/
上我有ViewSet
的路径。我想知道我是否可以使用我要检查的特定字段更改id,所以我可以看到条目是否存在,但我想保持id不变,所以
我试过了:
class CheckCouponAPIView(APIView):
def get(self, request, format=None):
try:
Coupon.objects.get(coupon=self.kwargs.get('coupon'))
except Coupon.DoesNotExist:
return Response(data={'message': False})
else:
return Response(data={'message': True})
但是我收到了一个错误:get() got an unexpected keyword argument 'coupon'
。
以下是路径:path('check/<slug:coupon>/', CheckCouponAPIView.as_view()),
在我的情况下,有什么好的做法可以适用吗?
答案 0 :(得分:1)
尝试这样的事情怎么样
class CheckCouponAPIView(viewsets.ModelViewSet):
# other fields
lookup_field = 'slug'
来自官方DRF Doc,
lookup_field
- 应该用于执行的模型字段 单个模型实例的对象查找。默认为pk