我有一个自定义验证的管理员表单。一些表单域通过list_editable显示在列表视图中。当我通过列表视图修改这些字段时,自定义验证不会启动。但是,当我使用常规更改表单时它确实有效。所以问题是我如何验证通过“change_list”页面所做的更改。在管理中为list_editable字段自定义验证
的代码可能会使它更清晰
class ProjectForm(ModelForm):
class Meta:
model = Project
def clean(self):
print "validating!"
data = self.cleaned_data
if data.get('on_frontpage') and not data.get('frontpage_image'):
raise ValidationError('To put a project on the frontpage you must \
specify a "Frontpage image" first.')
return data
class ProjectAdmin(AdminImageMixin, DisplayableAdmin, SortableAdmin):
form = ProjectForm
...
list_editable = ("status", "on_frontpage",)
list_display = ("title", "status", "on_frontpage")
谢谢!
这有什么更新? – fastmultiplication 2012-02-28 08:39:32
您的评论来自一个月前,但我只是回答了这个问题。 – 2012-03-19 17:14:54