【发布时间】:2011-05-17 07:21:18
【问题描述】:
我正在尝试执行验证,如果用户是管理员,您将无法删除他。因此,如果有管理员用户被标记为删除,我想检查并提出错误。
这是我的内联ModelForm
class UserGroupsForm(forms.ModelForm):
class Meta:
model = UserGroups
def clean(self):
delete_checked = self.fields['DELETE'].widget.value_from_datadict(
self.data, self.files, self.add_prefix('DELETE'))
if bool(delete_checked):
#if user is admin of group x
raise forms.ValidationError('You cannot delete a user that is the group administrator')
return self.cleaned_data
if bool(delete_checked): 条件返回 true,if 块内的内容被执行,但由于某种原因,从未引发此验证错误。有人可以解释一下为什么吗?
如果有其他更好的方法可以做到这一点,请告诉我
【问题讨论】:
标签: django validation django-admin django-forms