Where do you see form[1]?

What do you want to know?

What I am doing in my for loop?

Richard

On Thu, Nov 10, 2011 at 4:27 PM, Cliff <[email protected]> wrote:

> Richard,
>
> If you have time, what happens if you substitute form[1] for
> form.create_form[0] ?
>
> Thanks,
> Cliff Kachinske
>
> On Nov 10, 4:10 pm, Anthony <[email protected]> wrote:
> > My mistake -- looks like it always has a .create_form, but set to None in
> > other cases. But in that case:
> >
> > if form.create_form:
> >
> > should work, though I think you said that didn't work -- what happened
> when
> > you tried that?
> >
> > Anthony
> >
> >
> >
> >
> >
> >
> >
> > On Thursday, November 10, 2011 4:04:00 PM UTC-5, Richard wrote:
> >
> > > Ok but it's not seem to work... I get this error trace back :
> >
> > >  1.
> > > 2.
> > > 3.
> > > 4.
> > > 5.
> > > 6.
> > > 7.
> > > 8.
> > > 9.
> > > 10.
> >
> > > Traceback (most recent call last):
> >
> > >   File "/web2py/gluon/restricted.py", line 194, in restricted
> >
> > >     exec ccode in environment
> >
> > >   File "/web2py/applications/sgddms/controllers/test.py", line 4437,
> in <module>
> >
> > >   File "/web2py/gluon/globals.py", line 149, in <lambda>
> >
> > >     self._caller = lambda f: f()
> >
> > >   File "/web2py/applications/sgddms/controllers/test.py", line 4396,
> in test_sqlformgrid
> >
> > >     for i in range(0,len(form.create_form[0])):
> > > TypeError: 'NoneType' object is unsubscriptable
> >
> > > Any idea?
> >
> > > It really the first time I play with SQLFORM.grid and it not documented
> > > yet so I may ask kind of trivial question... Also I a bit under
> pressure.
> >
> > > I really appreciate your help.
> >
> > > Richard
> >
> > > On Thu, Nov 10, 2011 at 3:57 PM, Anthony <[email protected]> wrote:
> >
> > >> I'd go with the second option -- more fool proof.
> >
> > >> On Thursday, November 10, 2011 3:11:11 PM UTC-5, Richard wrote:
> >
> > >>> Ok so this :
> >
> > >>> "if 'new' in request.args and form.create_form:"
> >
> > >>> or shorter :
> >
> > >>> "if hasattr(form, 'create_form'):"
> >
> > >>> ?
> >
> > >>> Thank you.
> >
> > >>> Richard
> >
> > >>> On Thu, Nov 10, 2011 at 2:58 PM, Anthony <[email protected]> wrote:
> >
> > >>>> If you have "if 'new' in request.args:' you should not also need "if
> > >>>> form.create_form" (even if you did, you could simply put them in
> the same
> > >>>> "if" statement with an "and"). Alternatively, use "if hasattr(form,
> > >>>> 'create_form'):" -- all by itself.
> >
> > >>>> Anthony
> >
> > >>>> On Thursday, November 10, 2011 2:48:49 PM UTC-5, Richard wrote:
> >
> > >>>>>  Here a working piece of code :
> >
> > >>>>> def test_sqlformgrid():
> > >>>>>     form = SQLFORM.grid(db.TABLE, ui='jquery-ui',
> > >>>>> editable=auth.has_membership('****reviewer'),
> > >>>>> deletable=auth.has_membership(****'reviewer'), formstyle = 'divs')
> > >>>>>     if 'new' in request.args:
> > >>>>>         if form.create_form
> > >>>>>             for i in range(0,len(form.create_form[**0**])):
> > >>>>>                 if len(form.create_form[0][i][2][****0]) > 0:
> > >>>>>
> form.create_form[0][i][0].**appe**nd(SPAN((helpicon(),
> > >>>>> SPAN(form.create_form[0][i][2]****[0])),_class='tooltip'))
> > >>>>>                 del(form.create_form[0][i][2])
> > >>>>>      return dict(form=form)
> >
> > >>>>> Off course the for i in range... Is specific to my need but it the
> way
> > >>>>> to manipulate the generated html form before it goes in user
> hand...
> >
> > >>>>> :)
> >
> > >>>>> Richard
> >
> > >>>>> On Thu, Nov 10, 2011 at 2:44 PM, Richard Vézina <[email protected]
> >wrote:
> >
> > >>>>>>  It was working "if form.create_form:"...
> >
> > >>>>>> I thought that grid use form variable doesn't matter if the
> > >>>>>> SQLFORM.grid wasn't in a form variable at all...
> >
> > >>>>>> And my bad because I show form = crud... But it was not my
> > >>>>>> SQLFORM.grid... Arrg.
> >
> > >>>>>> Sorry about that...
> >
> > >>>>>> Richard
> >
> > >>>>>> On Thu, Nov 10, 2011 at 1:26 PM, Anthony <[email protected]>
> wrote:
> >
> > >>>>>>> On Thursday, November 10, 2011 12:42:49 PM UTC-5, Richard wrote:
> >
> > >>>>>>>> "if 'new' in request.args:" works (allow to load the grid) but
> the
> > >>>>>>>> "if form.create_form:" not work alone or in conjunction with
> the former
> >
> > >>>>>>> Yeah, looks like it would have to be something like "if
> > >>>>>>> hasattr(form, 'create_form'):".
>

Reply via email to