2016-05-01 8 views
0

編集した情報を私のDjangoに保存するにはどうしたらいいですか? ユーザープロファイルを編集して、自分のデータベースに保存したいと考えています。私は上記のコードを実行したときに、私はこの方法djangoの編集プロファイルを保存するには

@login_required() 
def saveProfile(request): 
    if request.method =='POST': 
     print "heloo" 
     usr=request.POST['username'] 
     first_name=request.POST['first_name'] 
     last_name=request.POST['last_name'] 
     email=request.POST['email'] 
     mobile=request.POST.get('mobile_no') 
     exp=request.POST.get('experience') 
     skills=request.POST.get('Skills') 
     edu=request.POST.get('education') 
     linkedin=request.POST.get('linkedin_id') 
     print first_name 
     updated_values={'first_name': first_name} 
     Consultants.objects.filter(user__username=usr).update(skills=skills, user__first_name=first_name) 

    return HttpResponse("your account is updated succesfully") 

作ったこのため は今、それはスキルの情報が保存されますが、エラーメッセージConsultants has no field named 'user__first_nameをスロー どのように私はあなたが更新することはできませんOneToOneモデルフィールドに

答えて

0

にアクセスすることができます1つのupdate-statement内の2つのdbテーブル私はあなたが、Consultantためdjango model form使用Userのためのフィールドを追加し、順番にsaveメソッドをオーバーライドすることをお勧めします、それを超えて

cons = Consultants.objects.filter(user__username=usr) 
# update profile model 
cons.update(skills=skills) 
# update user model 
User.objects 
    .filter(id__in=cons.values_list('user_id', flat=True)) 
    .update(first_name=first_name) 

:あなたはConsultants(名前、それConsultant PLS)とUser個別にモデルを更新する必要があります関連するUserインスタンスを保存します。

+0

ありがとうございました。現在作業中です。 – vikrant

関連する問題