2016-09-21 9 views
0

InstrumentAdmin(admin.ModelAdmin)は、どのように私はこのケースでUpdateFormした値(obj.id)を渡すことができ

def get_form(self,request, obj=None, **kwargs): 
    if obj: 
     return UpdateForm 
    else: 
     return CreateForm 
  1. をのModelFormするModelAdminのから値を渡しますか?データベースの別のテーブルからデータを取得し、UpdateFormのカスタムフィールドに表示する必要があります。

  2. 私はModelFormからどのように値を取得できますか?

私は多くの例を探していますが、それがどのように機能するかはまだ分かりません。何か助けを請う。

答えて

0

コードに問題があります。メソッドget_form()は、使用したいフォームを明示的に返すことを意図していますが、今はスーパークラスフォームを返しています。最初のチェックはほとんど役に立ちません。だから、それはおそらく、このようなSTHする必要があります:

def get_form(self,request, obj=None, **kwargs): 
    if obj: 
     return UpdateForm 
    else: 
     return CreateForm 
  1. 形成するために値を渡す方法は?たとえば、フォームフィールド名がvalueの場合は、return CreateForm(value=10)のようにキーワード引数として値を追加します。

2番目の質問は、どのような価値をあなたがModelFormから取得したいのですか?

+0

上記のお返事ありがとうございます。 – soohan

+0

例10の整数をUpdateFormに渡したいとします。私はデータベースからいくつかのデータを取得するための値が必要です。 – soohan

+0

詳細については、obj.idをフォームに渡したいと思います。 – soohan

関連する問題