/ /フィールド上にエラーメッセージを表示する方法 - python、django

フィールド上にエラーメッセージを表示する方法 - python、django

フィールドにエラーメッセージが表示されたらDjangoの管理では空白です。現時点では、ValidationErrorをページの早い方にもたらす方法を知っていますが、空白のフィールドのすぐ上にメッセージを表示する必要があります。これはどうすればできますか?

まだ答えを見つけることができませんでした。

class Article(models.Model):
...
title_ru = models.CharField(max_length=255, blank=True)
...

class ArticleAdmin(admin.ModelAdmin):

class form(forms.ModelForm):

class Meta:
model = models.Article

def clean(self):
cleaned_data = super(forms.ModelForm, self).clean()
title_ru = cleaned_data["title_ru"]
if not title_ru:
raise forms.ValidationError("Title ru")

return self.cleaned_data

forms.ValidationError("Title ru") ページの上部にメッセージを表示しますが、フィールド上にこのメッセージが必要です

フィールドTitle_ruにメッセージを出す方法?

回答:

回答№1は2

あなたが ValidationError の中に clean メソッドを使用すると、ページの上部にエラーメッセージが表示されます。検証エラーを発生させる clean_title_ru 代わりに

def clean_title_ru(self):
title_ru = self.cleaned_data["title_ru"]
if not title_ru:
raise forms.ValidationError("Title ru")

return self.cleaned_data["title_ru"]

回答№2の場合は0

一番良いのは、clean_title_ruの値をチェックすることですが、複数の値をチェックしたい場合は、それをどのように行うことができます:

def clean(self):
cleaned_data = super(forms.ModelForm, self).clean()
title_ru = cleaned_data["title_ru"]
if not title_ru:
msg = u"error in Title ru"
self._errors["title_ru"] = self.error_class([msg])

# These fields are no longer valid. Remove them from the cleaned data.
del cleaned_data["title_ru"]

return self.cleaned_data