class CurrentUser(object):
def set_context(self, serializer_field):
self.user_obj = serializer_field.context['request'].user
def __call__(self):
return self.user_obj
class GetObjectFlow(object):
def set_context(self, serializer_field):
self.object_flow = serializer_field.context['request'].data.get('object_flow') # 这里需要在views中传进去呀,djangocontext上下文中才能取到
def __call__(self):
return self.object_flow
class AddHolidaySerializer(serializers.ModelSerializer, BaseModelSerializer):
user = serializers.HiddenField(default=CurrentUser()) # 给用户外键赋当前请求的user
object_flow = serializers.HiddenField(default=GetObjectFlow()) # 后端自己处理一些特殊的外键
status = serializers.HiddenField(default=0) # 默认新增时给status赋初值
class Meta:
model = Holiday
exclude = ('deleted',)
drf 中serializers.HiddenField使用方法
最新推荐文章于 2020-07-06 09:36:34 发布