Python 仅允许在Django rest api框架中进行更新
我正在开发一个非常简单的应用程序,它只有一个模型和几个字段。我希望这些模型只能通过/admin页面(通过标准的Django管理框架)创建或删除,并且只允许restapi框架修改这些对象Python 仅允许在Django rest api框架中进行更新,python,django,rest,django-rest-framework,Python,Django,Rest,Django Rest Framework,我正在开发一个非常简单的应用程序,它只有一个模型和几个字段。我希望这些模型只能通过/admin页面(通过标准的Django管理框架)创建或删除,并且只允许restapi框架修改这些对象 有什么简单的方法可以实现吗?只需创建一个使用更新/检索模型mixen的视图集 from rest_framwork import viewsets, mixins class FooViewSet(mixens.RetrieveModelMixin, mixins.UpdateM
有什么简单的方法可以实现吗?只需创建一个使用更新/检索模型mixen的视图集
from rest_framwork import viewsets, mixins
class FooViewSet(mixens.RetrieveModelMixin,
mixins.UpdateModelMixin,
viewsets.GenericViewSet):
model = Foo
queryset = Foo.objects.all()
serializer_class = FooSerializer
这只会为您提供一个检索或更新模型实例的端点。只需创建一个使用更新/检索模型混合的视图集
from rest_framwork import viewsets, mixins
class FooViewSet(mixens.RetrieveModelMixin,
mixins.UpdateModelMixin,
viewsets.GenericViewSet):
model = Foo
queryset = Foo.objects.all()
serializer_class = FooSerializer
这只会为您提供一个检索或更新模型实例的端点。您需要设置
http\u方法\u名称
如下所示:
class WebViewSet(mixins.CreateModelMixin,
mixins.ListModelMixin,
mixins.UpdateModelMixin,
viewsets.GenericViewSet):
model = WebTransaction
http_method_names = ('get', 'put')
您需要设置
http\u方法\u名称
如下所示:
class WebViewSet(mixins.CreateModelMixin,
mixins.ListModelMixin,
mixins.UpdateModelMixin,
viewsets.GenericViewSet):
model = WebTransaction
http_method_names = ('get', 'put')
如果您想只更新对象,请使用。使用此视图,您将仅为您的模型创建更新(PUT方法)。如有疑问,请参阅中的文档。如果您只想更新使用的对象。使用此视图,您将仅为您的模型创建更新(PUT方法)。如有疑问,请参阅中的文档。我不理解您的问题。你想在管理员中禁用更新并只允许通过rest框架进行更新吗?@fasouto我想在rest框架中禁用创建和删除并启用更新我不理解你的问题。您想在管理中禁用更新,只允许通过rest框架进行更新吗?@fasouto我想在rest框架中禁用创建和删除,并启用UpdateWalcome!仅仅包含链接并不是一个好的答案。随着时间的推移,链接可能无法访问。请阅读这篇文章以遵循那里的指导原则。欢迎来到SO!仅仅包含链接并不是一个好的答案。随着时间的推移,链接可能无法访问。请阅读这篇文章以遵循那里的指导原则。