更改 M2M 关系的错误消息



更改 M2M 关系的错误消息:

我有 2 个模型,项目和类型:

class Item(models.Model):
types = models.ManyToManyField(Type, related_name='items')

class ItemForm(ModelForm):
class Meta:
model =Item
fields = ['types', 'name', 'desc']

我收到以下验证错误:

选择一个有效的选项。0 不是可用的选项之一。

我想更改此消息。怎么做?

在 Django 表单中,你可以清理用户输入。为此,您可以定义一个以clean_开头并以字段名称结尾的方法。在您的情况下,您可以像这样扩展表单类:

class  ItemForm(ModelForm):
class Meta:
model =Item
fields = ['types', 'name', 'desc']
def clean_types(self):
types = self.cleaned_data['types']
# now apply logic to check types
# this is just an example you might need to change
if types == 0:
raise forms.ValidationError('Please select valid choices for types')
# modify the validation error as you please
return types

有关表单和字段验证的广泛信息,请查看官方 Django 文档。

相关内容

  • 没有找到相关文章

最新更新