[CPS-devel] Widget should have at least one field.

JoseLuis de la Rosa Triviño joseluis.rosa at iavantefundacion.com
Fri Apr 28 17:36:35 CEST 2006


Hello, 

 

CPS 3.4 returns an error like this when there's no field specified in the "Fields" property of a widget.

 

######################################################################

File "/root/instances/zope2.9/innovaDes/Products/CPSSchemas/BasicWidgets.py", line 1133, in prepare

    datastructure[self.getWidgetId()] = bool(datamodel[self.fields[0]])

IndexError: tuple index out of range

> /root/instances/zope2.9/innovaDes/Products/CPSSchemas/BasicWidgets.py(1133)prepare()

-> datastructure[self.getWidgetId()] = bool(datamodel[self.fields[0]])

######################################################################

 

I propose to control the exception and raise a message, the method (for CPSBooleanWidget) would be:

 

######################################################################

def prepare(self, datastructure, **kw):

        """Prepare datastructure from datamodel."""

        datamodel = datastructure.getDataModel()

        if len(self.fields) > 0:

            datastructure[self.getWidgetId()] = bool(datamodel[self.fields[0]])

        else:

            raise RuntimeError("You should specify at least one field for the widget %s" % self.getWidgetId())

######################################################################

 

Thank you very much.

 

JoseLuis de la Rosa Triviño 
Becario Área de Sistemas de Información 
FUNDACIÓN IAVANTE 
joseluis.rosa at iavantefundacion.com 
Tel. 951 015 300 

 

Este correo electrónico y, en su caso, cualquier fichero anexo, contiene información confidencial exclusivamente dirigida a su(s) destinatario(s). Toda copia o divulgación deberá ser autorizada por IAVANTE.

This e-mail and any attachments are confidential and exclusively directed to its adressee(s). Any copy or distribution will have to be authorized by IAVANTE.

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.nuxeo.com/pipermail/cps-devel/attachments/20060428/446259c8/attachment.html


More information about the cps-devel mailing list
More information about CPS: CPS project - CVS - API

Hosting: Nuxeo: Zope service provider


This list archive provided by Nuxeo, the leaders of open source ECM. Check out the Nuxeo 5 open source, standards-based ECM project.