0

ModelForm で初期値を指定する方法に関する質問には、よく答えられています: ModelForm で 初期値をオーバーライドする

しかし、モデルが作成された後にどのように値を詰め込むのでしょうか? または、このコードをどのように修正しますか?

class Entry_form(forms.ModelForm):
    class Meta:
        model = models.Entry
        exclude = ('')

:

def entry_add(request, pk):
    form = Entry_form
    selected_text = request.GET.get('selected_text', '')
    form.fields['title'].initial = 'Test: ' + selected_text
    return render(request, 'entry_add,{'form': form})
4

1 に答える 1

0

コードにいくつかのエラーがあります。

  1. 次の行を削除します。

    exclude = ('')

    ('')空のタプルではなく、空の文字列です。

  2. form = Entry_formする必要がありますform = Entry_form()

  3. return render(request, 'entry_add,{'form': form})- 締めの引用符がありません。

この線:

form.fields['title'].initial = 'Test: ' + selected_text

正しく、動作するはずです。

別の方法は次のとおりです。

form.initial['title'] = 'Test: ' + selected_text
于 2012-08-21T09:46:43.160 に答える