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
- Form field with fixed value by roam 3 days, 17 hours ago
- New Snippet! by Antoliny0919 1 week, 3 days ago
- Add Toggle Switch Widget to Django Forms by OgliariNatan 2 months, 4 weeks ago
- get_object_or_none by azwdevops 6 months, 3 weeks ago
- Mask sensitive data from logger by agusmakmun 8 months, 2 weeks ago
Comments
Please login first before commenting.