【发布时间】:2019-06-26 19:04:49
【问题描述】:
您好,我有一个 django rest 框架视图集。对于创建视图,我想创建一个自定义视图,该视图将基于两个不同的参数创建一个新记录,这些参数是通过命名空间和路径的 url 传递的。我查看了文档,但找不到它的外观。我不确定我需要做什么才能根据两个 url 参数创建记录。
我基本上尝试将 create 设置为 CreateAPIView 但它不起作用
class PreferenceViewSet(viewsets.ViewSet):
queryset = Preference.objects.all()
serializer_class = PreferenceSerializer
def get_permissions(self):
if self.action == 'create' or self.action == 'destroy':
permission_classes = [IsAuthenticated]
else:
permission_classes = [IsAdminUser]
return [permission() for permission in permission_classes]
def list(self, request):
queryset = Preference.objects.all()
serializer = PreferenceSerializer(queryset, many=True)
return Response(serializer.data)
def create(self, request):
queryset = Preference.objects.all()
serializer = PreferenceSerializer(queryset, many=True)
return Response(serializer.data)
我想设置 create 以使用在 url 中传递的两个参数创建首选项
path('preferences/<str:namespace>/<str:path>', preference_path, name='preference-path'),
我希望它用命名空间和路径创建一个新对象
【问题讨论】:
标签: python django django-rest-framework