2

CSS でフォ​​ームのスタイルを設定しようとしています。まず第一に、公式ドキュメント以外では完全な例を見たことがないので、ブログのエントリや記事をいただければ幸いです。

私のフォームでは、典型的な Charfield は次のように html に変換されます。

<input type="text" name="artists" id="id_artists" />

フォームの一部のフィールドにエラーが含まれている場合、前の Charfield は値を記憶して次のようになります。

<input type="text" name="artists" value="Pink Floyd" id="id_artists"  />

value="Pink Floyd"この値( )をdjangoフォームで取得するにはどうすればよいですか? 私のフィールドが だとすると、フィールド、ラベル、およびとして{{form.artists}}使用できますが、この値はどうですか?{{form.artists}}{{form.artists.label}}{{form.artists.errors}}{{form.artists.help_text}}

前もって感謝します!

4

3 に答える 3

4

django に頼って自動作成するのではなく、入力フィールドを具体的に作成します。

何かのようなもの:

<input type="text" name="artists" id="id_artists" value="{{form.artists.title}}" />

動作するはずです

于 2009-03-09T11:24:47.787 に答える
2

dataプロパティからフィールドの現在の値を取得できます。

{{ form.artists.data }}

これについて言及しているDjangoのドキュメントは表示されませんが、機能します...

于 2009-03-09T15:20:35.147 に答える
0

フォーム クラスに追加の検証を追加して、フォーム データを処理することもできます。djangobook.comから:

from django import forms

class ContactForm(forms.Form):
    subject = forms.CharField(max_length=100)
    email = forms.EmailField(required=False)
    message = forms.CharField(widget=forms.Textarea)

    def clean_message(self):
        message = self.cleaned_data['message']
        num_words = len(message.split())
        if num_words < 4:
            raise forms.ValidationError("Not enough words!")
        return message

メソッド内では、辞書clean_messageを使用して特定のフィールドにアクセスできます。self.cleaned_dataこのディクショナリは、検証済みのすべてのフォームで使用できます。

必ずフィールドを返すようにしてください。この場合messageは 、そうでない場合Noneは が返されます。

于 2011-03-06T05:45:33.263 に答える