当前位置: 首页>>代码示例>>Python>>正文


Python widget.FieldWidget类代码示例

本文整理汇总了Python中z3c.form.widget.FieldWidget的典型用法代码示例。如果您正苦于以下问题:Python FieldWidget类的具体用法?Python FieldWidget怎么用?Python FieldWidget使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了FieldWidget类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: testWidgetExtract

    def testWidgetExtract(self):
        from zope.interface import Interface, implementer
        from plone.app.textfield import RichText
        from zope.publisher.browser import TestRequest
        from Products.CMFCore.PortalContent import PortalContent
        from plone.app.textfield.widget import RichTextWidget
        from z3c.form.widget import FieldWidget
        from z3c.form.interfaces import NOVALUE

        class IWithText(Interface):

            text = RichText(title=u"Text",
                            default_mime_type='text/structured',
                            output_mime_type='text/html')

        @implementer(IWithText)
        class Context(PortalContent):

            text = None

        request = TestRequest()

        widget = FieldWidget(IWithText['text'], RichTextWidget(request))
        widget.update()

        value = widget.extract()
        self.assertEquals(NOVALUE, value)

        request.form['%s' % widget.name] = u"Sample **text**"
        request.form['%s.mimeType' % widget.name] = 'text/structured'

        value = widget.extract()
        self.assertEquals(
            u"<p>Sample <strong>text</strong></p>",
            value.output.strip())
开发者ID:,项目名称:,代码行数:35,代码来源:

示例2: testWidgetConverter

    def testWidgetConverter(self):
        from zope.interface import Interface
        from plone.app.textfield import RichText
        from zope.publisher.browser import TestRequest
        from plone.app.textfield.value import RichTextValue
        from plone.app.textfield.widget import RichTextWidget
        from plone.app.textfield.widget import RichTextConverter
        from z3c.form.widget import FieldWidget

        _marker = object()

        class IWithText(Interface):

            text = RichText(title=u"Text",
                            default_mime_type='text/structured',
                            output_mime_type='text/html',
                            missing_value=_marker)

        request = TestRequest()

        widget = FieldWidget(IWithText['text'], RichTextWidget(request))
        widget.update()

        converter = RichTextConverter(IWithText['text'], widget)
        self.assertTrue(converter.toFieldValue(u'') is _marker)
        self.assertTrue(converter.toFieldValue(RichTextValue(u'')) is _marker)
开发者ID:,项目名称:,代码行数:26,代码来源:

示例3: testWidgetAllowedTypesField

    def testWidgetAllowedTypesField(self):
        from zope.interface import Interface, implementer
        from plone.app.textfield import RichText
        from zope.publisher.browser import TestRequest
        from Products.CMFCore.PortalContent import PortalContent
        from plone.app.textfield.widget import RichTextWidget
        from z3c.form.widget import FieldWidget

        class IWithText(Interface):

            text = RichText(
                title=u"Text",
                default_mime_type='text/structured',
                output_mime_type='text/html',
                allowed_mime_types=(
                    'text/structured',
                    'text/html'))

        @implementer(IWithText)
        class Context(PortalContent):

            text = None

        request = TestRequest()

        widget = FieldWidget(IWithText['text'], RichTextWidget(request))
        widget.update()

        self.portal['portal_properties']['site_properties']._setPropValue(
            'forbidden_contenttypes',
            ['text/structured'])

        allowed = widget.allowedMimeTypes()
        self.failUnless('text/html' in allowed)
        self.failUnless('text/structured' in allowed)
开发者ID:,项目名称:,代码行数:35,代码来源:

示例4: DateFieldWidget

def DateFieldWidget(field, request):
    """IFieldWidget factory for DatetimeWidget."""
    widget = FieldWidget(field, DateWidget(request))
    currentYear = datetime.date.today().year
    minimumYearRange = currentYear - 1900  # don't display dates before 1900
    widget.years_range = (-minimumYearRange, 1)
    return widget
开发者ID:collective,项目名称:collective.contact.core,代码行数:7,代码来源:behaviors.py

示例5: ImageFieldWidget

def ImageFieldWidget(field, request):
    image = FieldWidget(field, ImageWidget(request))
    image.value = field.title
    # Get the full resource URL for the image:
    site = hooks.getSite()
    image.src = unicode(zope.traversing.api.traverse(site, "++resource++" + field.image, request=request)())
    return image
开发者ID:,项目名称:,代码行数:7,代码来源:

示例6: OptgroupFieldWidget

def OptgroupFieldWidget(field, request):
    """Factory for OptgroupWidget."""
    widget = FieldWidget(field, OptgroupWidget(request))
    if hasattr(field, "value_type"):
        widget.multiple = getMultiAdapter((field, field.value_type, request), interfaces.IFieldWidget).multiple
    else:
        widget.multiple = getMultiAdapter((field, request), interfaces.IFieldWidget).multiple
    return widget
开发者ID:tmassman,项目名称:z3c.formwidget.optgroup,代码行数:8,代码来源:widget.py

示例7: DateFieldWidget

def DateFieldWidget(field, request):
    widget = FieldWidget(field, DateWidget(request))
    widget.pattern_options.setdefault('date', {})
    try:
        widget.pattern_options['date']['firstDay'] = first_weekday()
    except ComponentLookupError:
        pass
    return widget
开发者ID:athomerson,项目名称:plone.app.z3cform,代码行数:8,代码来源:widget.py

示例8: CarouselBackgroundLinkWidget

def CarouselBackgroundLinkWidget(field, request):
    widget = FieldWidget(field, RelatedItemsWidget(request))
    widget.vocabulary = 'plone.app.vocabularies.Catalog'
    widget.pattern_options = widget.pattern_options.copy()
    widget.pattern_options.update({
        'selectableTypes': ['Image'],
        'maximumSelectionSize': 1
    })
    return widget
开发者ID:collective,项目名称:collective.portlet.carousel,代码行数:9,代码来源:widgets.py

示例9: CarouselReferencesWidget

def CarouselReferencesWidget(field, request):
    widget = FieldWidget(field, RelatedItemsWidget(request))
    widget.vocabulary = 'plone.app.vocabularies.Catalog'
    widget.pattern_options = widget.pattern_options.copy()
    widget.pattern_options.update({
        'selectableTypes': None,
        'maximumSelectionSize': None
    })
    return widget
开发者ID:collective,项目名称:collective.portlet.carousel,代码行数:9,代码来源:widgets.py

示例10: test_widget_values

    def test_widget_values(self):
        from plone.app.widgets.dx import RichTextWidget
        from plone.app.textfield.value import RichTextValue

        widget = FieldWidget(self.field, RichTextWidget(self.request))
        # set the context so we can get tinymce settings
        widget.context = self.portal
        widget.value = RichTextValue(u'Lorem ipsum \u2026')
        base_args = widget._base_args()
        self.assertEquals(base_args['value'], u'Lorem ipsum \u2026')
开发者ID:hoka,项目名称:plone.app.widgets,代码行数:10,代码来源:test_dx.py

示例11: RecurrenceFieldWidget

def RecurrenceFieldWidget(field, request):
    # Please note: If you create a new behavior with superclasses IEventBasic
    # and IRecurrence, then you have to reconfigure the dotted path value of
    # the start_field parameter for the RecurrenceWidget to the new
    # behavior name, like: IMyNewBehaviorName.start.
    widget = FieldWidget(field, RecurrenceWidget(request))
    widget.start_field = 'IEventBasic.start'
    widget.first_day = first_weekday_sun0
    widget.show_repeat_forever = False
    return widget
开发者ID:takanory,项目名称:plone.app.event,代码行数:10,代码来源:behaviors.py

示例12: testRichTextAreaWidgetConverter

    def testRichTextAreaWidgetConverter(self):
        from zope.interface import Interface
        from plone.app.textfield import RichText
        from zope.publisher.browser import TestRequest
        from plone.app.textfield.value import RichTextValue
        from plone.app.textfield.widget import RichTextWidget
        from plone.app.textfield.widget import RichTextAreaConverter
        from z3c.form.widget import FieldWidget

        _marker = object()

        class IWithText(Interface):

            text = RichText(title=u"Text",
                            default_mime_type='text/structured',
                            output_mime_type='text/html',
                            missing_value=_marker)

        request = TestRequest()

        widget = FieldWidget(IWithText['text'], RichTextWidget(request))
        widget.update()

        converter = RichTextAreaConverter(IWithText['text'], widget)

        # Test with None input.
        self.assertRaises(ValueError, converter.toFieldValue, None)
        self.assertTrue(converter.toWidgetValue(None) is None)

        # Test with string input.
        self.assertTrue(converter.toFieldValue('') is _marker)
        self.assertRaises(ValueError, converter.toFieldValue, b'Foo')
        self.assertRaises(ValueError, converter.toWidgetValue, b'')
        self.assertRaises(ValueError, converter.toWidgetValue, b'Foo')

        # Test with unicode input.
        self.assertTrue(converter.toFieldValue(u'') is _marker)
        self.assertEqual(converter.toFieldValue(u'Foo').raw, u'Foo')
        self.assertTrue(
            isinstance(converter.toFieldValue(u'Foo'), RichTextValue)
        )
        self.assertEqual(converter.toWidgetValue(u''), u'')
        self.assertEqual(converter.toWidgetValue(u'Foo'), u'Foo')

        # Test with RichTextValue input.
        self.assertTrue(converter.toFieldValue(RichTextValue(u'')) is _marker)
        rich_text = RichTextValue(u'Foo')
        self.assertEqual(converter.toFieldValue(rich_text), rich_text)
        self.assertEqual(converter.toFieldValue(rich_text).raw, u'Foo')
        self.assertEqual(converter.toWidgetValue(rich_text), u'Foo')
开发者ID:plone,项目名称:plone.app.textfield,代码行数:50,代码来源:tests.py

示例13: NotificationRulesFieldWidget

def NotificationRulesFieldWidget(field, request):
    widget = FieldWidget(field, PatternWidget(request))
    widget.pattern = 'uutask-notification-rules'
    widget.pattern_options = dict()
    widget.pattern_options['rule'] = dict(
        field2=[i[:2] for i in TIME_UNITS],
        field3=[i[:2] for i in TIME_RELATIONS],
        field4=[i[:2] for i in SOURCE_NOTIFY_DATE],
    )
    widget.pattern_options['i18n'] = dict(
        add_rule=_(u"Add rule"),
        remove=_(u"Remove"),
    )
    alsoProvides(widget, IInheritParentValue)
    return widget
开发者ID:upiq,项目名称:uu.task,代码行数:15,代码来源:behaviors.py

示例14: test_dx_tinymcewidget_single_mimetype

    def test_dx_tinymcewidget_single_mimetype(self):
        """A RichTextWidget with only one available mimetype should render the
        pattern class directly on itself.
        """
        if IMarkupSchema:
            # if not, don't run this test
            self._set_mimetypes(allowed=('text/html',))
            from plone.app.z3cform.widget import RichTextWidget
            widget = FieldWidget(self.field, RichTextWidget(self.request))
            # set the context so we can get tinymce settings
            widget.context = self.portal
            rendered = widget.render()

            self.assertTrue('<select' not in rendered)
            self.assertTrue('pat-tinymce' in rendered)
            self.assertTrue('data-pat-tinymce' in rendered)
开发者ID:upiq,项目名称:plone.app.z3cform,代码行数:16,代码来源:test_widgets.py

示例15: test_widget_params

    def test_widget_params(self):
        from plone.app.z3cform.widget import RichTextWidget

        widget = FieldWidget(self.field, RichTextWidget(self.request))
        # set the context so we can get tinymce settings
        widget.context = self.portal
        widget.update()
        base_args = widget._base_args()
        self.assertEqual(base_args['name'], 'text')
        self.assertEqual(base_args['value'], u'')
        self.assertEqual(base_args['pattern'], 'tinymce')

        self.assertEqual(base_args['pattern_options']['prependToUrl'],
                         'resolveuid/')
        self.assertEqual(
            base_args['pattern_options']['upload']['relativePath'],
            '@@fileUpload')
开发者ID:athomerson,项目名称:plone.app.z3cform,代码行数:17,代码来源:test_widgets.py


注:本文中的z3c.form.widget.FieldWidget类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。