我在我的Django Admin站点中使用TinyMCE。我需要验证没有禁止的HTML标签被提交。这是我的尝试:Django-TinyMCE验证规则
1)验证法
def check_for_invalid_html_tags(value) :
compiled_regex = re.compile('<(?!/?(p|div|ul|li)(>|\s))[^<]+?>')
if compiled_regex.match(value):
raise ValidationError('Invalid Tags')
2)有效性规则
content = tinymce_models.HTMLField(validators=[check_for_invalid_html_tags])
这似乎并不工作,因为任何提交通过为有效让。当我将tinymce_models.HTMLField更改为models.TextField时,该规则完美工作。因此我认为这个问题是TinyMCE的结果。
任何人都可以帮忙吗?
用它来做那个'content = tinymce_models.HTMLField(validators = [CheckForInvalidHtmlTags()])' – MoiTux
该解决方案使用一个仿函数,但是一个简单的函数也没关系 – MoiTux
好极了。问题是使用匹配而不是搜索。谢谢 – Herm