小编chr*_*aka的帖子

django 在基于类的 ListView 中按用户 id 过滤

我有一个基于类的 ListView,我想通过登录的 user_id 过滤对象,因为项目模型有一个指向 settings.AUTH_USER_MODEL 的外键

class ItemListView(LoginRequiredMixin, StaffRequiredMixin, ListView):
  model = Item
  template_name = "items/list_items.html"
Run Code Online (Sandbox Code Playgroud)

在基于函数的视图中,我可以使用 request.user 但不能在基于通用类的视图中执行此操作。关于如何最好地做到这一点的任何想法?

这是项目模型

class Item(models.Model):
  user = models.ForeignKey(settings.AUTH_USER_MODEL)
  description = models.CharField(max_length=300)
Run Code Online (Sandbox Code Playgroud)

django django-generic-views python-3.x django-class-based-views django-1.8

7
推荐指数
1
解决办法
5860
查看次数

带有 JWT 授权标头的 Curl PUT 请求

我仍然掌握使用curl 来测试来自终端的API 请求的技巧。我在格式化方面遇到了特殊问题,因为我尝试的 API 请求需要在每次调用时传递 JWT 令牌。\n我尝试传递的请求是 PUT 请求,我的问题是在哪里放置 JWT 令牌授权的标头。\n我尝试了以下格式,但收到错误“无法解析主机:\xe2\x80\x94H”curl:(6) 无法解析主机:“授权:”

\n\n
curl -X PUT -H "Authorization: JWT <token here>" -d "field=value" "https://url/update_record/<id>/"\n
Run Code Online (Sandbox Code Playgroud)\n\n

有任何想法吗?

\n\n

正在访问的呼叫具有以下权限

\n\n
class Item_Update_APIView(UpdateAPIView):\n    authentication_classes = [SessionAuthentication, BasicAuthentication, JSONWebTokenAuthentication]\n    permission_classes = [IsAuthenticated]\n    serializer_class = ItemSerializer\n\n    def get_queryset(self):\n        id = self.kwargs[\'id\']\n        return Item.objects.filter(id__exact=id)\n
Run Code Online (Sandbox Code Playgroud)\n\n

序列化器:

\n\n
class ItemSerializer(ModelSerializer):\n\n    class Meta:\n        model = Item\n            fields = [\n            \'id\',\n            \'booleanField\',\n        ]\n
Run Code Online (Sandbox Code Playgroud)\n

curl jwt django-rest-framework curl-commandline json-web-token

7
推荐指数
0
解决办法
1万
查看次数