Very interesting. Yes, it makes sense now that I see for 1st time that
models are being called for each & every LOAD. Now it is obvious why
browser refresh is slow for me! I am tracing it through and will let
you know what I find. Thanks for the lead.

On Aug 14, 6:04 pm, Massimo Di Pierro <[email protected]>
wrote:
> in your models add a
>
> print request.env.path_info
>
> you may find somehow you have one more call than you think which
> resets the session. This may be due to a broken link in the view.
>
> On 14 Ago, 14:01, weheh <[email protected]> wrote:
>
>
>
>
>
>
>
> > As you can see, nothing really fancy here.
>
> > def my_action():
> >     form=SQLFORM.factory(
> >             Field('text_field','text',
> >                 length=100000 if auth.user_id else 50,
> >                 default=T("default text") if not auth.user_id else '',
> >                 requires=IS_NOT_EMPTY()),
> >                 _id='text-form')
>
> >     if form.accepts(request.vars,session):
> >         # the body of this won't be executed the first time the form
> >         # is loaded, but it does get executed every time thereafter
> >         # so this is not where the problem is
> >     elif form.errors:
> >         # this condition is tested the first time the form is
> >         # submitted, but not thereafter because the form
> >         # accepts properly the second and subsequent times
>
> >     return dict(form=form)
>
> > The view is down below some widgets and stuff. It always displays
> > properly.
> > Here's the actual LOAD statement:
>
> >         <div>{{=LOAD('my_controller','my_action.load',ajax=True)}}</div>
>
> > On Aug 14, 2:36 pm, Anthony <[email protected]> wrote:
>
> > > Can you show your controller and view code?
>
> > > On Sunday, August 14, 2011 2:14:19 PM UTC-4, weheh wrote:
> > > > I have a componentized form that is behaving very strangely. The form
> > > > is very simple -- just a text field.
>
> > > >   form=SQLFORM.factory(Field('text_in','text'))
>
> > > >   if form.accepts(request.vars, session):
> > > >    .... do stuff ...
>
> > > > The first time I load the form, it loads fine. I traced it in Eclipse
> > > > and saw the form getting created with SQLFORM.factory. When I fill in
> > > > text, however, the form does not accept, nor does it generate any
> > > > error. Inspecting in Eclipse shows form.vars is empty.
>
> > > > OK, so now the form is still visible since it was reloaded. I enter
> > > > the same text again and click submit. This time, the form.accepts(...)
> > > > accepts the form and processes it.
>
> > > > I upgraded to the latest and greatest version but still get this
> > > > strange behavior. Anybody have an idea what's going on?

Reply via email to