Already solved, please ignore.. :-)

Thanks!

Alexandre



On 8/25/06, Alexandre Futata <[EMAIL PROTECTED] > wrote:
Almost ok, now I have the following problem:

Both in your instructions and in the link you sent me, I get the following error when submitting the form:

"index() got an unexpected keyword argument 'pwd2" (for the example in http://tinyurl.com/pq67j )

What's missing?

Thanks,

Alexandre






On 8/23/06, Alberto Valverde < [EMAIL PROTECTED]> wrote:


On Aug 23, 2006, at 6:26 PM, Alexandre Futata wrote:

> Hi! I have the following question about using htmlfill on Turbogears:
>
> "How to return the form with the data previously typed by the user,
> if errors were found by the formencode.validators()"?
>
> The main question is: validation_error() can't access valid
> submitted values, so how do I send them back to the user?
>
> Sorry for the previous newbie e-mail (incomplete...). ^_^
>
> Thanks,
>
> Alexandre
> --------------------------------
>         def newForm(self):
>
>                 form = widgets.TableForm("FormType",
>                         widgets.TextField(name="number",
> label="Type an Int number:")
>                         action      = "processForm",
>                         submit_text = ...
>                 return dict(form=form)
>
>         @validate(validators={"number"  : validators.Int()})
>         def processForm(self, number):
>
>                 ...(save in the database, return ok to user)...
>
>         def validation_error(self, function_name, kw, errors) #
> called by the validator
>
>                  ....
>

Try something like:

# You need the form instantiated only once and return the same
# instance as the one passed to "validate"
form = widgets.TableForm(
        fields = [
                # stick your validators in the form's fields
                widgets.TextField("number", validator=validators.Int(), label=...),
                ]

def newForm(self):
        return dict(form=form)

# Branch to "newForm" if validation fails so the form is redisplayed
with
# previous input and errors
@error_handler(newForm)
# validate input using the form's schema
@validate(form=form)
def processForm(self, number):
        # number is a int if execution reaches this point
        ....


http://tinyurl.com/pq67j
and
http://tinyurl.com/df57n
should help too.

Alberto






--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/turbogears
-~----------~----~----~----~------~----~------~--~---

Reply via email to