You can use the SPAM_FILTERS setting to set a list of handlers that check form and comment submission for spam. The default uses Akismet (if you have it set up in your site settings), but you could easily add your own.
For example, I have added the following to my site. I've genericised this code a bit: ================================= # settings.py SPAM_FILTERS = ("mytheme.views.is_spam",) # mytheme/views.py def is_spam(request, form, url): """ Validates form data as being 'spam' or not based on a validation question. Essentially this should be a field in the form always added that has the following properties: Label: *must* contain the string "validation code". Type: Single Line Text Required: True Visible: True Default: None Help Text: something useful as to why this question is being asked The answer for this example is "foobarqux" but you should change it as appropriate NOTE: The form submisison goes through regardless, the entry is just not saved/emailed if the answer is incorrect. """ for name, field in form.fields.items(): if field.label and "validation code" in field.label.lower(): cleaned_data = form.cleaned_data.get(name) if "foobarqux" in cleaned_data.lower(): # The form field was filled correctly! It's likely not spam! return False else: # It's spam, not good return True # else there's no "validation code" field in the form, so we accept all submissions return False ================================= So for the forms that require the validation question, just add a field to your form following the comments above, and forms which answer incorrectly will be treated as spam. Unfortunately, this mechanism does not reject the form and tell the user they got the question wrong, it just prevents the form submission from being emailed. If anyone has an easier solution so that form validation can be done /prior/ to the submission being accepted, I'd love to see it too. Seeya. Danny. On 5 March 2014 10:12, Josh Cartmell <joshcar...@gmail.com> wrote: > Lately I've had a lot of clients (and a site of my own) getting a lot of > spam submitted to Mezzanine forms. > > I'm wondering if anyone else has encountered this and/or has ideas/solutions > to cut down on spam submissions. > > Thanks! > > -- > You received this message because you are subscribed to the Google Groups > "Mezzanine Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to mezzanine-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. -- molo...@gmail.com -- You received this message because you are subscribed to the Google Groups "Mezzanine Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to mezzanine-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.