【问题标题】:Vue + DRF - best way to get userVue + DRF - 获取用户的最佳方式
【发布时间】:2021-03-08 17:57:12
【问题描述】:

我正在编写一个使用 Vue + DRF 的博客应用程序。我有一个新的帖子组件,但我不确定哪种方式最适合将帖子作者传递到后端。前端使用了一个存储,因此可以将作者与其余的帖子数据一起传递,但也有可能通过覆盖帖子视图集中的create 方法从请求中获取用户。第二种方法的副作用是不可能通过rest api面板创建与登录用户不同的新帖子,所以这就是我想知道它的原因。这种情况我该怎么办?

【问题讨论】:

  • 你需要从你的 API 的角度来考虑。它已经拥有什么信息,它需要什么?它应该已经知道经过身份验证的用户是谁,因此您无需显式传递该信息。除非您当然希望用户能够覆盖帖子的假定作者。

标签: django vue.js django-rest-framework


【解决方案1】:

如果这是一个标准的博客应用程序,我会选择第二种解决方案,你可能不希望你的用户能够在他们自己的不同帐户下写帖子,你会增加你的 vue 应用程序的复杂性。另外,如果您使用的是 DRF,则不需要重写 create 方法。 DRF 为您提供了在请求中设置隐式属性的便捷方法。例如,您可以通过在视图/视图集中添加来设置帖子的作者

def perform_create(self, serializer):
    serializer.save(author=self.request.user)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-10
    • 2017-08-01
    • 2014-02-27
    • 2022-01-11
    • 1970-01-01
    • 2023-03-14
    • 2020-06-23
    • 1970-01-01
    相关资源
    最近更新 更多