======================
2005/10/07 16:44:22  INFO Traceback (most recent call last):
  File
"/home/gary/lib/python2.4/site-packages/CherryPy-2.1.0_rc1-py2.4.egg/cherrypy/_cphttptools.py",
line 272, in run
    main()
  File
"/home/gary/lib/python2.4/site-packages/CherryPy-2.1.0_rc1-py2.4.egg/cherrypy/_cphttptools.py",
line 498, in main
    body = page_handler(*args, **cherrypy.request.paramMap)
  File
"/home/gary/lib/python2.4/site-packages/TurboGears-0.8a1dev-py2.4.egg/turbogears/controllers.py",
line 119, in newfunc
    raise turbogearsvalid.Invalid(str(errors))
TypeError: __init__() takes at least 4 arguments (2 given)
=============================================
turbogearsvalid is simply validators from formencode, the Invalid class
is like the following :

class Invalid(Exception):

    """
    This is raised in response to invalid input.  It has several
    public attributes:

    msg:
        The message, *without* values substituted.  For instance, if
        you want HTML quoting of values, you can apply that.
    substituteArgs:
        The arguments (a dictionary) to go with `msg`.
    str(self):
        The message describing the error, with values substituted.
    value:
        The offending (invalid) value.
    state:
        The state that went with this validator.  This is an
        application-specific object.
    error_list:
        If this was a compound validator that takes a repeating value,
        and sub-validator(s) had errors, then this is a list of those
        exceptions.  The list will be the same length as the number of
        values -- valid values will have None instead of an exception.
    error_dict:
        Like `error_list`, but for dictionary compound validators.
    """

    def __init__(self, msg,
                 value, state, error_list=None, error_dict=None):
        Exception.__init__(self, msg)
        self.msg = msg
        self.value = value
        self.state = state
        self.error_list = error_list
        self.error_dict = error_dict

Reply via email to