Skip to main content
The ng.schema product
=====================


The ng.schema is zope3 product developed to provide some interface (schema)
fields and widget. Current field and widget list are:

interfaceswitcher
-----------------
Field can be used to dynamic switch subinterfaces of
some interface;

Sample of use ::

from ng.schema.interfaceswitcher.interfacechoicefield import InterfaceChoice
from ng.schema.interfaceswitcher.interfacesetfield import InterfaceSet

class IA(Interface) :
pass

class IA1(IA) :
pass

class IA2(IA) :
pass

class IOb(Interface) :

ifc = InterfaceChoice(
title=u'Interface of IA',
interface = IA,
)

ifs = InterfaceSet(
title=u'Interface of IA',
interface = IA,
with_title=True
)

regexp
------
Product can be used to check input text line with some set of
regexp and customize text line with some rewrite rules before set.

Sample of use ::

from ng.schema.regexp.regexpfield import Regexp
class IOb(Interface) :
title = Regexp(title = u'Title',
description = u'Title',
default = u'',
required = True,
regexp = (
(False, u"^.*/.*$", u"Title do not content symbol '/'"),
),
rewrite = (
(u"^\s*(?P<name>\w+)\s*-\s*(?P<number>[0-9]+)\s*$", u"%(name)s-%(number)s"),
(u"^\s*(?P<name>[^\s])\s*$", u"%(name)s"),
)
)

floatdayttime
-------------
The field allow present attribute containing float number as
time string in "HH:MM:SS" format.

Sample of use::

from ng.schema.floatdaytime.floatdaytime import FloatDayTime
class IOb(Interface) :
time = FloatDayTime(
title = u"Time",
description = u"Time of day",
required = False,
min=u'00:00',
max=u'24:00',
default=u'00:00'
)

principalidwidget
-----------------
The widget allow automaticaly assign text field by user Id. The field display as not-editable field
with current user name as vaue. User name and id gets from request attributes.

Sample of use::

<addform
label="Add Article"
name="AddArticle.html"
schema="ng.content.article.interfaces.IDocShortLogo"
content_factory="ng.content.article.article.article.Article"
class=".nexturl.NextUrl"
permission="zope.ManageContent"
layer="...interfaces.GreenpsySkin"
set_before_add="title"
>
<widget
field="author"
class="ng.schema.principalidwidget.principalidwidget.PrincipalIdWidget" />
</addform>

dropdowndatewidget
------------------
The widget allow input date by means of select value from three dropdown list for
day, mounth and year.

Sample of use::

<editform
schema="..interfaces.IProfileAnnotation"
for="..interfaces.IProfileAnnotation"
label="Profile"
name="profileannotation.html"
permission="zope.ManageContent"
menu="zmi_views" title="ProfileAnnotation"
>
<widget field="birthday" class="ng.schema.dropdowndatewidget.dropdowndatewidget.DropDownDateWidget" />
</editform>


* Thu Feb 12 2009 Andrey Orlov <dbdt@dreambot.ru> 0.0.6
- Widget multiselectwidget added;

* Thu Oct 23 2008 Andrey Orlov <dbdt@dreambot.ru> 0.0.5
- FloatDayTime enhanced
- InterfaceVocabulary use docstring as title now
- FloatDayTime field substantively rewrited, max, min, default values support added;
- Interface switcher fields changed: them display doc-string as title now.

* Mon Oct 20 2008 Andrey Orlov <dbdt@dreambot.ru> 0.0.4
- DropdownDate widget added;
- PrincipalId widget added;

* Sun Jan 11 2008 Andrey Orlov <dbdt@dreambot.ru> 0.0.3
- FloatDayTime field added
- InterfaceSet field added
- Initial interface of vocabulary changed

* Wed Nov 7 2007 Andrey Orlov <dbdt@dreambot.ru> 0.0.2
- first official release

Release files for ng.schema 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ng.schema 0.0.6
File Size Uploaded
ng.schema-0.0.6.tar.gz 13.0 kB Details

Release files / ng.schema-0.0.6.tar.gz

Download URL ng.schema-0.0.6.tar.gz
Size 13.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a5f84b83c6be0f94bfcbbae01370971cc6b4830716a39b1cd361616b2fce4438
BLAKE2b-256 checksum
How to use checksums
b5422bbb416b5fa135533845b55dee8e1b16b1b08c97324409a2710ff4b86700
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.6 This release

1 release file

0.0.5

1 release file

0.0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page