It works for SQLFORM, not FORM. The FORM structure is too open and 
customizable. web2py would not know where to add it.


On Thursday, 26 September 2013 04:52:44 UTC-5, Cliff Kachinske wrote:
>
> add_button is a method of FORM().  But I'm not sure it works as the 
> following shows:
>
> cjk@debian:~/pybin/web2py-src/web2py$ python
> Python 2.7.3 (default, Jan  2 2013, 13:56:14) 
> [GCC 4.7.2] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from gluon import html
> >>> simpleform = html.FORM(html.INPUT(_type="text", _name="mytext"))
> >>> simpleform.xml()
> '<form action="#" enctype="multipart/form-data" method="post"><input 
> name="mytext" type="text" /></form>'
> >>> # Now comes an exception
> ... 
> >>> simpleform.add_button('foo', html.URL('bar', 'baz', 'foo'))
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "gluon/html.py", line 2216, in add_button
>     submit.parent.append(
> AttributeError: 'NoneType' object has no attribute 'parent'
> >>> 
> >>> # Now we fix the exception
> ... 
> >>> simpleform.append(html.INPUT(_type='submit'))
> >>> simpleform.xml()
> '<form action="#" enctype="multipart/form-data" method="post"><input 
> name="mytext" type="text" /><input type="submit" /></form>'
> >>> 
> >>> # Now add_button will appear to work
> ... 
> >>> simpleform.add_button('foo', html.URL('bar', 'baz', 'foo'))
> >>> 
> >>> #See, no exception. But look at this:
> ... 
> >>> simpleform.xml()
> '<form action="#" enctype="multipart/form-data" method="post"><input 
> name="mytext" type="text" /><input type="submit" /></form>'
> >>> 
> >>> #Whiskey Tango Fox? Button doesn't seem to be there
>
>
>
> On Wednesday, September 25, 2013 1:17:37 PM UTC-4, wb wrote:
>>
>> Trying to generate a small form that is all buttons: 
>>
>> def month-example: 
>>      months = {'January', 'February', 'March'} 
>>
>>      form = FORM() 
>>      for month in months: 
>>          # this fails 
>>          form.add_button(month, URL(month)) 
>>      return dict(form=form) 
>>
>> This generates 'NoneType' object has no attribute 'parent'. 
>>
>> Creating links with helpers works: 
>>
>>          form += A( month, _href=URL(month) ) 
>>
>> But the form is a dictionary, and the months are out of order.  I think 
>> that add_button preserves the order, but have not verified that. 
>>
>> Does add_button only work with SQLFORM? 
>>
>> How can the order of elements added to a form programmatically be 
>> controlled? 
>>
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to