我正在创建一个自定义对象,其中用户为外键,因此我得到的请求是以下形式:

<QueryDict: {'csrfmiddlewaretoken': ['someToken'], 'name': ['SomeName'], 'user.username': ['username'], 'user.email': ['email@gmail.com'], 'user.password': ['1234']}>

我需要从 user. 开始获取所有属性 . 基本上,它是该请求中的User对象 .

有没有办法直接得到它而不是挑剔每一个key-val对?

我目前正在做的是

def create(self, data):
    user_data = {key.split('.')[1]: value for key,
                 value in data.items() if 'user.' in key.lower()}
    user = UserBasicSerializer.create(UserBasicSerializer(), user_data)

    return models.Student.objects.create(user=user, name=data.get('name'))

有没有更好的方法?

谢谢