python - 使用 Django Rest Framework 和 ViewSets 更新模型

标签 python django django-rest-framework

我是 DRF 的新手,我正在尝试构建一个 webhook 来提供模型对象列表并允许更新这些对象。我遵循了本教程 http://www.django-rest-framework.org/tutorial/quickstart/ ,并具有以下序列化程序和 View :

class Task(serializers.ModelSerializer):
    class Meta:
        model = Task
        fields = ('user', 'task', 'unixTime')

查看:

class RequestViewSet(viewsets.ModelViewSet):
    """
    API endpoint that allows reqests to be viewed or edited.
    """
    queryset = Task.objects.filter(done = False).order_by('-unixTime')
    serializer_class = Task
    paginate_by = None

    def list(self, request, *args, **kwargs):
        self.object_list = self.filter_queryset(self.get_queryset())
        serializer = self.get_serializer(self.object_list, many=True)
        return Response({'results': serializer.data})

我很确定我必须在 def list 下包含一个 def update,但是我找到的在线资源对于如何实现它们以及实现什么有点不清楚他们是这样。感谢您的帮助。

最佳答案

@hackerman,嗯...,如果你进行了下一步,

http://www.django-rest-framework.org/tutorial/quickstart/#urls

你会得到一个api地址,它可能看起来像http://localhost:8000/task/1/ ,假设这里是你的数据库中的一个任务 obj (id=1)。请在您的浏览器中打开它并检查 api 是否有效。

然后,您需要一个 http 客户端(requests 是一个不错的选择)来创建一个带有 json 字符串数据的 PUT 请求。

希望对你有帮助。

关于python - 使用 Django Rest Framework 和 ViewSets 更新模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45251280/

相关文章:

python - 扩展 Django 用户模型无法访问属性

python - 'pytest' 退出时没有错误,但出现 "collected 0 items"

python - 使用 `get_or_create` 时不隐藏软删除实例

python - Django Rest Framework 部分更新

django - 'AuthToken' 类型的对象不是 JSON 可序列化的

python - Azure 长音频 API - NodeJS

python - 将列表项放入队列中

python - 密码未保存

django - 如何检索模板变量中的前 10 个元素?

python - Django Rest - 在 get_*** 方法中包含序列化器对象