use*_*655 3 django django-rest-framework
如何保存created_by为请求用户?请注意,该字段未在序列化程序中定义
class User(models.Model):
email = models.EmailField(...)
name = models.CharField(...)
created_by = models.ForeignKey('User')
class UserSerializer(serializer.ModelSerializer):
class Meta:
model = User
fields = ['email', 'name']
class CreateUserApiView(CreateAPIView):
model = User
serializer_class = CreateRequesterSerializer
def create(self, request, *args, **kwargs):
# how can I save `created_by` as request user?
return super(CreateUserApiView, self).create(request, *args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
覆盖CreateAPIView的perform_create()方法
class CreateUserApiView(CreateAPIView):
# your code
def perform_create(self, serializer):
serializer.save(created_by=self.request.user)Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |