Django-регистрация довольно продолжительна. Одним из способов его расширения является предоставление пользовательской регистрационной формы. Я бы рекомендовал использовать reCaptcha , например с полем виджета и формы от здесь ( в архиве ). Тогда это так же просто, как написание пользовательского класса формы и регистрационного бэкэнда (что проще, чем кажется):
from registration.backends.default import DefaultBackend
from registration.forms import RegistrationForm
class RecaptchaRegistrationForm(RegistrationForm)
recaptcha = ReCaptchaField(label="I'm a human")
class RecaptchaRegistrationBackend(DefaultBackend):
def get_form_class(self, request):
return RecaptchaRegistrationForm
Последний шаг - указать django-registration использовать ваш бэкэнд. Этот шаг описан в документах (я не могу найти HTML-версию документов, извините)