2011-02-10 12 views

答えて

0

短い回答:残念ながら、そのようにフォームを保存することはできません。あなたが(またはあなたが、autocompletefieldを使用して、たとえば、それらをなどを自分でコントロールしている)のForeignKeyやM2M分野が含まれていない形成する場合は、フォームの後に、オブジェクトを扱うことができます。

_obj = _form.save(commit=False) 
_obj.save(using=_db_alias) 

長い答えを:あなたの場合これは理想的であるが、

# The form's foreign_keys and m2m-fields get the data from the db_alias database 
# and evertyhing is sdisplayed correctly on the template. 
_form = myModelForm(request, db_alias=_db_alias) 

# The form saves to the correct DB and foreigns & M2ms are matched correctly in this DB 
# _form.save() 

、あなただけのこの振る舞いを使用することはできませんのModelFormはのForeignKeyやM2Mフィールドと通常の1、のようなもののように動作します。この機能を利用するには、Djangoのコードを変更する必要がある多くのDBフックがあります。私がしたのは、基本モデルフォームから新しいmodelformクラスを作成し、前に説明した(部分的な)機能を得ることです。

これがうまくいくと思っています。また、より良い解決策を見つけることは間もなく行われます。

+0

ありがとうございます。それがすぐに良くなることを願っています。 – pista329

関連する問題