コード例 #1
0
 def __init__(self,
              schema,
              renderer=None,
              counter=None,
              resource_registry=None,
              **kw):
     self.counter = counter or itertools.count()
     self.order = next(self.counter)
     self.oid = 'deformField%s' % self.order
     self.schema = schema
     self.typ = self.schema.typ  # required by Invalid exception
     if renderer is None:
         renderer = self.default_renderer
     if resource_registry is None:
         resource_registry = self.default_resource_registry
     self.renderer = renderer
     self.resource_registry = resource_registry
     self.name = schema.name
     self.title = schema.title
     self.description = schema.description
     self.required = schema.required
     self.children = []
     self.__dict__.update(kw)
     for child in schema.children:
         self.children.append(
             Field(child,
                   renderer=renderer,
                   counter=self.counter,
                   resource_registry=resource_registry,
                   **kw))
コード例 #2
0
ファイル: field.py プロジェクト: aleksandr-rakov/deform
 def __init__(self, schema, renderer=None, counter=None,
              resource_registry=None, **kw):
     self.counter = counter or itertools.count()
     self.order = next(self.counter)
     self.oid = 'deformField%s' % self.order
     self.schema = schema
     self.typ = self.schema.typ # required by Invalid exception
     if renderer is None:
         renderer = self.default_renderer
     if resource_registry is None:
         resource_registry = self.default_resource_registry
     self.renderer = renderer
     self.resource_registry = resource_registry
     self.name = schema.name
     self.title = schema.title
     self.description = schema.description
     self.required = schema.required
     self.children = []
     self.__dict__.update(kw)
     for child in schema.children:
         self.children.append(Field(child,
                                    renderer=renderer,
                                    counter=self.counter,
                                    resource_registry=resource_registry,
                                    **kw))
コード例 #3
0
 def clone(self):
     """ Clone the field and its subfields, retaining attribute
     information.  Return the cloned field.  The ``order``
     attribute of the node is not cloned; instead the field
     receives a new order attribute; it will be a number larger
     than the last renderered field of this set."""
     cloned = self.__class__(self.schema)
     cloned.__dict__.update(self.__dict__)
     cloned.order = next(cloned.counter)
     cloned.oid = 'deformField%s' % cloned.order
     cloned.children = [field.clone() for field in self.children]
     return cloned
コード例 #4
0
ファイル: field.py プロジェクト: aleksandr-rakov/deform
 def clone(self):
     """ Clone the field and its subfields, retaining attribute
     information.  Return the cloned field.  The ``order``
     attribute of the node is not cloned; instead the field
     receives a new order attribute; it will be a number larger
     than the last renderered field of this set."""
     cloned = self.__class__(self.schema)
     cloned.__dict__.update(self.__dict__)
     cloned.order = next(cloned.counter)
     cloned.oid = 'deformField%s' % cloned.order
     cloned.children = [ field.clone() for field in self.children ]
     return cloned
コード例 #5
0
ファイル: widget.py プロジェクト: aleksandr-rakov/deform
 def deserialize(self, field, pstruct):
     if pstruct is null:
         return null
     if not pstruct.strip():
         return null
     try:
         infile = StringIO(pstruct)
         reader = csv.reader(infile)
         # row = reader.next()
         row = next(reader)
     except Exception as e:
         field.unparseable = pstruct
         raise Invalid(field.schema, str(e))
     return row