Hi All,
I'm trying to make a simple boolean form that upon submission puts the
form data into the URL, and in doing so defines the states of each
button. Unfortunately this is not working, for reasons I can't see.
In the code below, the button first defaults to checked. If the
button is deselected, then on redirect the button is off (as
expected). BUT, if the form is submitted a second time, the button is
turned back on again, and locked on forever no matter what I do.
I suspect that this is happening because when the button is not
pushed, the form.vars.DefaultTrue=None, but oddly it seems this gets
translated to "True" in the URL. I never get "None" in
request.get_vars.DefaultTrue. I can't figure out how to change this.
I know I can use keepvalues=True to prevent this for a single session,
but it then does not use the data in the URL.
Am I doing something wrong here?
Thanks,
--Peter
-------------
def test_boolean_forms():
default_val=True
if request.get_vars.DefaultTrue=="False":
default_val=False
form=SQLFORM.factory(Field("DefaultTrue","boolean", default=default_val))
if form.accepts(request.vars, session):
redirect(URL(r=request,f='test_boolean_forms',vars=form.vars))
return dict(form=form)
--
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/web2py?hl=en.