It's unexpectedly, that the form is still alive after "getpdf", because the
controller doesn't return any form (unless it's an ajax-request).
I think, If you want to return a pdf that depends on some args/vars then
better to have the separated controller:
def pdfcontroller():
if request.args(0) == "monthly":
...
# and/or:
if request.vars.some:
....
response.headers["Content-Type"] = "application/pdf"
return pdfcontent
So, you could use it anywhere by URL("pdfcontroller", args=[...], vars =
dict(...)):
if form.process().accepted:
redirect(URL("pdfcontroller", args=[form.vars.report_type], vars =
dict(month
= form.vars.month, anothervar= form.vars.somevar)))
or just as A-element:
A ("get pdf ", _href = URL(...))
On Tuesday, August 22, 2017 at 4:31:38 PM UTC+3, ensenbach wrote:
>
> Hello,
>
> in a controller I construct a FORM with two submit buttons:
>
> def index():
> if request.vars["getpdf"]:
> response.headers["Content-Type"] = "application/pdf"
> return ""
> form = FORM()
> form.append(INPUT(_name="addfield", _type="submit", _value="add field"
> ))
> form.append(INPUT(_name="getpdf", _type="submit", _value="get pdf"))
> return dict(form=form)
>
> When I click on the "get pdf" button, all buttons are first disabled
> ("Working..."), then are again enabled but with both buttons reading "add
> field". Is there a way to have the second button get back its original
> title "get pdf"?
>
> Best regards
>
> Marc
>
--
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/d/optout.