使用漂白剂清理 Django 中的所有表单输入字段
Use bleach to Sanitize all Form input fields in Django
我刚开始清理 django 表单中的输入字段,需要您的帮助。这是一个以 django 形式漂白一个字段的示例。 http://www.agmweb.ca/2010-12-31-django-and-bleach/
我的问题是,如果 django ModelForm 中有 10 个这样的字段,是否有比一个一个地漂白所有 10 个字段更好的方法?
也就是说,它可以只使用类似漂白剂的东西吗(form.data)?
使用 django-bleach
提供 BleachField
(models.TextField
的包装):
from django import models
from django_bleach.models import BleachField
class Post(models.Model):
content = BleachField()
或者,如果您想漂白表单的所有字段,您可以重写 _clean_fields()
:
class YourForm(ModelForm):
def _clean_fields(self):
super(LogCollectorParamsForm, self)._clean_fields()
for name, value in self.cleaned_data.items():
self.cleaned_data[name] = bleach.clean(value)
我刚开始清理 django 表单中的输入字段,需要您的帮助。这是一个以 django 形式漂白一个字段的示例。 http://www.agmweb.ca/2010-12-31-django-and-bleach/
我的问题是,如果 django ModelForm 中有 10 个这样的字段,是否有比一个一个地漂白所有 10 个字段更好的方法?
也就是说,它可以只使用类似漂白剂的东西吗(form.data)?
使用 django-bleach
提供 BleachField
(models.TextField
的包装):
from django import models
from django_bleach.models import BleachField
class Post(models.Model):
content = BleachField()
或者,如果您想漂白表单的所有字段,您可以重写 _clean_fields()
:
class YourForm(ModelForm):
def _clean_fields(self):
super(LogCollectorParamsForm, self)._clean_fields()
for name, value in self.cleaned_data.items():
self.cleaned_data[name] = bleach.clean(value)