要求:
List<ProfileClass>
我正在处理我的private void MenuItemProfile_Clicked(object sender, System.EventArgs e)
{
var profile = (ProfileClass)((View)sender).BindingContext;
// Now you can use the 'profile' object to show the pop up.
}
,我希望在创建对象时将当前用户添加到我的用户字段中,但它无法知道。
我在我的API Rest中使用Python 3.7
Django 2.0
。
我关注了这个问题:How to set current user to user field in Django Rest Framework?
但它似乎与我的代码无关。
我有 serializers.py 文件:
Django Rest API
我的 /Api/views.py 文件:
JWT Authentification
为了尝试我的API,我配置了一个pythonic文件,它与其他Web应用程序的工作相同。
此文件如下所示:
class IndividuCreateSerializer(serializers.ModelSerializer) :
class Meta :
model = Individu
fields = [
'Etat',
'Civilite',
'Nom',
'Prenom',
'Sexe',
'Statut',
'DateNaissance',
'VilleNaissance',
'PaysNaissance',
'Nationalite1',
'Nationalite2',
'Profession',
'Adresse',
'Ville',
'Zip',
'Pays',
'Mail',
'Telephone',
'Utilisateur',
'Image',
'CarteIdentite',
]
def create(self, validated_data):
obj = Individu.objects.create(**validated_data)
Identity_Individu_Resume(self.context.get('request'), obj.id)
return obj
我的对象创建良好,但我的用户字段为空。 我如何写这个以便将当前用户添加到用户字段?
谢谢!
答案 0 :(得分:2)
您可以将当前用户直接传递给序列化程序在视图中的保存方法:
class IndividuCreateAPIView(CreateAPIView) :
permission_classes = (IsAuthenticated,)
authentication_classes = (JSONWebTokenAuthentication,)
queryset = Individu.objects.all()
serializer_class = IndividuCreateSerializer
def perform_create(self,serializer):
serializer.save(Utilisateur=self.request.user)