Thanks for the help, but I do'nt understand while the problem is the
function.
The form obtained from the function work very well so I think the
function is ok.
The only problem is the 'memory' of the already selected correct
values for the
SingleSelectField.
All the other fields work well and the message of error is correctly
displayed.
The correct values are re-displayed but not the SingleSelectField's
values.

Could be ther is something I do'nt understand in the validate engine.
So, question:
The @error_handler(activity1)  line set the activity1 to be called in
case of error.
The function is really re-called with re-instantiation of all the
variable and re-construction of the form?
I think yes but have some dout while I do'nt understand how the
message 'Missing value' wolud be displayed in a complete new instance
of the form.
And the pre-setted value after the error are re-displayed in the form
if I do'nt re-initialize the parameters to pass to the form.
So I think that depend from a browser cache.
I did'nt find documentation about but if you can say me where I'm be
happy to study ...
Enrico Secco

On 15 Giu, 10:32, "Diez B. Roggisch" <[email protected]> wrote:
> On Monday 15 June 2009 10:15:51 enrico secco wrote:
>
>
>
> > Hi people,
> > I did alredy post this problem on the ToscaWidgets group but no
> > response.
> > Could be here ... I'm more lucky.
>
> > I'm in truble with validation in TG 1.0.8 ToscaWidgets application.
> > I did search the discussion to find a solution but seems that I'm
> > alone with this problem...
> > So at fisrt my configuration and the code:
>
> > the ls of my site-packeges direcory is:
>
> > Cheetah-2.0.1-py2.5-linux-i686.egg
> > CherryPy-2.3.0-py2.5.egg
> > configobj-4.6.0-py2.5.egg
> > DBSprockets-0.5dev_r417-py2.5.egg
> > DecoratorTools-1.7-py2.5.egg
> > easy-install.pth
> > Extremes-1.1.1-py2.5.egg
> > FormEncode-1.2.2-py2.5.egg
> > Genshi-0.5.1-py2.5-linux-i686.egg
> > gsquickstart-1.0-py2.5.egg
> > kid-0.9.6-py2.5.egg
> > Paste-1.7.2-py2.5.egg
> > PasteDeploy-1.3.3-py2.5.egg
> > PasteScript-1.7.3-py2.5.egg
> > PyProtocols-1.0a0dev_r2302-py2.5-linux-i686.egg
> > RuleDispatch-0.5a1.dev_r2506-py2.5-linux-i686.egg
> > setuptools-0.6c9-py2.5.egg
> > setuptools.pth
> > simplejson-2.0.9-py2.5-linux-i686.egg
> > SQLAlchemy-0.5.3-py2.5.egg
> > ToscaWidgets-0.9.4-py2.5.egg
> > TurboCheetah-1.0-py2.5.egg
> > TurboGears-1.0.8-py2.5.egg
> > TurboJson-1.1.4-py2.5.egg
> > TurboKid-1.0.4-py2.5.egg
> > tw.dynforms-0.9.1-py2.5.egg
> > tw.forms-0.9.3-py2.5.egg
> > tw.yui
> > tw.yui-0.9.2.7.0dev-py2.5.egg
> > WebOb-0.9.6.1-py2.5.egg
> > WidgetBrowser
> > WidgetBrowser-0.1dev_20090509-py2.5.egg
>
> > controllers.py
>
> > def get_activity_form2(role=-1):
> >     activity_form = twf.TableForm('activity_form',
> > action='save_activity1', validator=TGSchema, children=[
> >         twf.HiddenField('id'),
> >         twf.HiddenField('user'),
> >         twf.CalendarDatePicker('date', date_format='%d/%m/%Y'),
> >         twf.SingleSelectField('project', options=get_projects(),
> > validator=NotEmpty),
> >         twd.CascadingSingleSelectField('role', options=get_roles
> > (),cascadeurl='get_activitytypes2',label='Ruolo', validator=NotEmpty),
> >         twf.SingleSelectField('activitytype',
> > options=get_activitytypes
> > (role=role), validator=NotEmpty),
> >         twf.TextField('minutes', validator=NotEmpty),
> >     ])
> >     return activity_form
>
> It's hard to understand what your actual problem is, but for me it appears to
> be the above function.
>
> TW (and TG 1) widgets are designed around the concept of singleton instances
> of a given widget. They are *not* re-created on the fly within a request.
>
> A usual setup is this (untested):
>
> form_a = TableForm('activity_form', fields=[...])
> form_b = TableForm('activity_form', fields=[...other fields...])
>
> def get_activity_form():
>      if request.params['that_hidden_field_that_tells_us_the_form']
> == "form_a":
>           return form_a
>      return form_b
>
> And of course in your controllers, you also always only return the various
> form instances.
>
> Diez
--~--~---------~--~----~------------~-------~--~----~
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?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to