This works for me (web.py 0.37):
import web
class SyssecForm(web.form.Form):
def __init__(self, *inputs, **kw):
super(SyssecForm, self).__init__(*inputs, **kw)
def render(self):
out='<div id="form"> '
for i in self.inputs:
html = web.utils.safeunicode(i.pre) + i.render() + self.rendernote(i.note) + web.utils.safeunicode(i.post)
out += "%s"%(html)
out += '"<div id="%s"> %s %s</div>'% (i.id, web.net.websafe(i.description), html)
out+= "</div>"
return out
form = SyssecForm(web.form.Textbox("test"))
print form.render()
Your problem is that you may have an outdated web.py since web.form.Form now inherits from object: https://github.com/webpy/webpy/commit/766709cbcae1369126a52aee4bc3bf145b5d77a8
. object delcaration : class SyssecForm(web.form.Form, object): web.py.