Hello ,

I've used something like this :
def listform():
  listf=[]
  thing = [one two three]
  for x in thing:
     form=FORM(':', INPUT(_name="name"))
     listf.append(form)
return dict(listf=listf)

Yet I usually use SQLFORM and add a submit button


As this is my firts answer to a coding question, do not hesitate to
tell if I'm wrong

On 12 juil, 22:26, Rick <sababa.sab...@gmail.com> wrote:
> Hi,
>
> How to generate multiple forms with a loop?
>
> In my controller file there are forms generated with this loop:
>
> thing=[one, two, three]
> def theFunction():
>         for thing1  in varibale1:
>                 form=FORM(':',
>                                 INPUT(_name='name')
>                         )
>                 return dict(form=form)
>
> ...but this code doesn't work. I just get the message "invalid view".
> I suppose the reason that I get this message is that all the forms
> have the same name in the view file. Therefor I also tried with:
>         return dict(form=[thing])
> ...but got:
> SyntaxError: keyword can't be an expression
>
> I've tried with this code in the view file:
>
>         {{extend 'layout.html'}}
>         <h2>{{=form}}</h2>
>
> ...and also with this:
>
>         {{extend 'layout.html'}}
>         <h2>
>         {{thing=[one, two, three]}}
>         {{for thing1  in varibale1:}}
>                 {{=form}}
>         </h2>
>
> ...but none of them worked.
>
> Thanks in advance for help

Reply via email to