2016-07-21 13 views
-2

私は2つのModelFormを持っています。ユーザーフォームとプロファイルフォーム。フォームデータをユーザーオブジェクトのプロファイルに保存する方法がわかりません。私のプロファイルmodelformはデータベースに保存されません(Django)

user = user_form.save(commit=False) 
profile = profile_form.save(commit=False) 

password = user_form.cleaned_data['password'] 

user.set_password(password) 
user.is_active = False 
user.is_staff = True 
user.save() 

私は、プロファイルを保存しようとした:

about = profile_form.cleaned_data['about'] 
user.profile.about = about 

しかし、それは動作しませんでした

これはそれのいくつかは、私の汎用ビュー内の私のポスト機能にどのように見えるかです。私はUser has no profile.を取得するデータを保存するには?

+0

これを並べ替えることができましたか? – e4c5

答えて

1

しかし、プロファイル自体はまったく保存されていません。

REF:https://docs.djangoproject.com/en/1.9/topics/forms/modelforms/#the-save-method

このsave()メソッドは、 は、TrueまたはFalseのどちらかを受け入れ、オプションのコミットキーワード引数を受け入れます。 = Falseをコミットします(saveを呼び出す場合)で、 それはまだ データベースに保存されていないオブジェクトを返します。この場合、結果の モデルインスタンスに対してsave()を呼び出すのはあなた次第です。

ユーザーインスタンスでこれを実行しているときに、プロファイルインスタンスでsaveを呼び出していません。

関連する問題