![](/img/trans.png)
[英]How to get Request.User in Django-Rest-Framework serializer?
[英]Django REST: Serializer create function request.user not found
創建 function 給我以下錯誤:
AttributeError: 'dict' object has no attribute 'user'
看起來 request.user 在此序列化程序中不存在。 有沒有辦法在序列化程序中檢索用戶 ID? 或者這是不可能的?
class EmployeeQuestionSerializer(serializers.ModelSerializer):
class Meta:
model = EmployeeQuestion
fields = (
'id',
'employee',
'question',
'attempted',
'passed',
)
def create(self, request):
serializer = EmployeeQuestionSerializer(employee=request.user.pk)
if serializer.is_valid():
return serializer.save();
def update(self, instance, validated_data):
instance.attempted = validated_data.get('attempted')
instance.passed = validated_data.get('passed')
instance.save()
return instance
您可以將請求 object 從 views.py 傳遞到此序列化程序
serializer = EmployeeQuestionSerializer(queryset, context={'request':request})
然后在 serializers.py 中,您可以在 create 中使用 self 訪問它: user=self.context['request'].user
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.