As an update, the issue remains with the following combinations:
* if input type='submit' and different names
* if input type='button', with or without different name attributes

However, input type='text' are present in form.vars.

For the interested a solution for usage in components is to use set a hidden
input text field via the click event of each button.
Miguel


On Mon, Aug 23, 2010 at 3:54 AM, Miguel Lopes <mig.e.lo...@gmail.com> wrote:

> I'm using the "same name to all input type submits" technique. This is very
> nice because it avoids some js and works like a charm :-)
> In a regular controller the code works flawlessly. However when I try to
> put it in a controller, it fails:
>
> status_form = FORM(_id='status_form')
> for status in OPPTY_STATUS:
>     btn = INPUT(_type='submit', _name='status', _value=status,
> _class='status_btn')
>     status_form.append(btn)
>
> if status_form.accepts(request.vars, session, formname='status_form'):
>     # status_form.vars.status is None in component
>     # status_form.vars.status corresponds to whatever submit was pressed in
> regular controller
> ...
>
> It seems like the component mechanisms is ignoring the value of 'status'.
>
> Miguel
>

Reply via email to