I wanted a global way to filter profanity w/out having to modify every model, view, or form. While middleware takes overhead, this technique is intended mainly for sites w/few postbacks. Hopefully this snippet will lead to more/better techniques in the comments below.
Usage (settings.py):
MIDDLEWARE_CLASSES = (
'PROJECT_NAME.FILE_NAME.ProfanityFilterMiddleware',
)
1 2 3 4 5 6 7 8 | from django.conf import settings
class ProfanityFilterMiddleware(object):
def process_request(self, request):
rpd = request.raw_post_data.lower()
for w in settings.PROFANITIES_LIST:
if rpd.find(w)!=-1:
return HttpResponseRedirect("/static/html/rephrase.html")
|
More like this
- get_object_or_none by azwdevops 1 week, 1 day ago
- Mask sensitive data from logger by agusmakmun 2 months ago
- Template tag - list punctuation for a list of items by shapiromatron 1 year, 4 months ago
- JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 1 year, 4 months ago
- Serializer factory with Django Rest Framework by julio 1 year, 11 months ago
Comments
Please login first before commenting.