plone用户注册表单中的Captcha字段

plone用户注册表单中的Captcha字段,plone,plone-4.x,Plone,Plone 4.x,我需要一个plone默认用户注册表中的captcha字段(@@register)。使用 from mypackage import myMessageFactory as _ from quintagroup.formlib.captcha import Captcha from quintagroup.formlib.captcha import CaptchaWidget from plone.app.users.browser.register import RegistrationFor

我需要一个plone默认用户注册表中的captcha字段(
@@register
)。

使用

from mypackage import myMessageFactory as _
from quintagroup.formlib.captcha import Captcha
from quintagroup.formlib.captcha import CaptchaWidget
from plone.app.users.browser.register import RegistrationForm
from zope.interface import Interface
from zope.formlib import form


class ICaptchaSchema(Interface):
    captcha = Captcha(
        title=_(u'Prevent spam'),
        description=_(
            u'Type the text in the picture.'
        ),
    )


class CustomRegistrationForm(RegistrationForm):
    """ Custom registration form
    """

    @property
    def form_fields(self):
        fields = super(CustomRegistrationForm, self).form_fields
        fields += form.Fields(ICaptchaSchema)
        fields['captcha'].custom_widget = CaptchaWidget

        return fields