Richard, You answered my question already.
Using your nomenclature it should have been table[1], which would be the created table. On Nov 10, 4:30 pm, Richard Vézina <[email protected]> wrote: > 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'):".

