我只是从 Python 和 Django 开始,并使用 sweetpie 创建一个 RESTful API。
我需要根据经过身份验证的用户计算资源的字段,我计划在我的资源中覆盖 dehydrate_field 方法,但我不知道如何在 dehydrate_field 方法中获取经过身份验证的用户。
我正在使用tastepie的ApiKeyAuthentication,我目前正在URL的查询字符串中传递身份验证参数,但我也希望能够在身份验证标头中传递身份验证参数。
我想我应该能够自己从查询字符串或授权标头中获取用户名,并找到用户,但我觉得它已经在某处的美味派中实现了,但我找不到它文档。
这是一些示例代码:
class MyModelResource(ModelResource):
calculated_field = fields.BooleanField(readonly=True)
class Meta:
queryset = MyModel.objects.all()
resource_name = 'mymodel'
authentication = ApiKeyAuthentication()
def dehydrate_calculated_field(self, bundle):
user = <get authenticated user somehow>
return <some boolean that's calculated depending on authenticated user>
我想知道tastepie是否有一些内置功能来获取经过身份验证的用户,或者根据查询字符串参数或标题字段来滚动我自己的正确方法。