Hi everyone,
We have a use case that we need to add a new textarea field as a behavior.
To create this behavior I wrote this code:
# coding: utf-8
from example.portal import _
from plone.autoform import directives as form
from plone.autoform.interfaces import IFormFieldProvider
from plone.supermodel import model
from zope import schema
from zope.interface import provider
@provider(IFormFieldProvider)
class IExample(model.Schema):
"""Behavior example."""
model.fieldset(
'example',
label=_(u'Example'),
fields=['example'],
)
form.widget(example='z3c.form.browser.textarea.TextAreaFieldWidget')
external_related_items = schema.Tuple(
title=_(u'Example'),
required=False,
default=(),
value_type=schema.TextLine(),
)
I used similar code in other form, so I didn't expect this exeption:
2017-09-18 11:56:48 ERROR Zope.SiteErrorLog 1505746608.630.713578418328 http://localhost:8080/Plone/videos/evolution-of-usain-bolts-races-2004-2794-2017/@@edit
Traceback (innermost last):
Module ZPublisher.Publish, line 138, in publish
Module ZPublisher.mapply, line 77, in mapply
Module Products.PDBDebugMode.runcall, line 70, in pdb_runcall
Module ZPublisher.Publish, line 48, in call_object
Module z3c.form.form, line 233, in __call__
Module plone.dexterity.browser.edit, line 64, in update
Module plone.z3cform.fieldsets.extensible, line 59, in update
Module plone.z3cform.patch, line 30, in GroupForm_update
Module z3c.form.group, line 141, in update
Module z3c.form.group, line 52, in update
Module z3c.form.group, line 48, in updateWidgets
Module z3c.form.field, line 277, in update
Module z3c.form.browser.textarea, line 37, in update
Module z3c.form.browser.widget, line 171, in update
Module Products.CMFPlone.patches.z3c_form, line 46, in _wrapped
Module z3c.form.widget, line 131, in update
Module zope.component.hookable, line 33, in __call__
Module zope.component.hooks, line 104, in adapter_hook
Module z3c.form.converter, line 86, in FieldWidgetDataConverter
Module zope.component._api, line 120, in queryMultiAdapter
Module zope.component.registry, line 238, in queryMultiAdapter
Module zope.interface.adapter, line 532, in queryMultiAdapter
Module z3c.form.converter, line 78, in __init__
TypeError: Field ``example`` of type ``Tuple`` must provide ``IFromUnicode``.
Do someone know something about this exception?