Massimo, Yes, I did. Does not make a difference. Thanks for the suggestion, Kiran
On Monday, January 13, 2014 7:49:15 PM UTC+5:30, Massimo Di Pierro wrote: > > Have you tried replacing > > value="{{=form.custom.inpval['country']}}" > > with > > value="{{=form.custom.dspval['country']}}" > > On Sunday, 12 January 2014 22:50:43 UTC-6, subbaram...@gmail.com wrote: >> >> Really would like some help with this. Anyone have suggestions? >> Thank you, >> Kiran >> >> On Saturday, January 11, 2014 12:10:07 AM UTC+5:30, >> subbaram...@gmail.comwrote: >>> >>> Hello All, >>> The *design *is: I have a custom form with the a controller that >>> inserts/updates a table. Tthe form accepts data, and on successful >>> submission of this form, it stays on the same page (there are no redirects >>> to another page or form) >>> *Issue*: The problem am seeing is, when I update values in the form, >>> and submit it, the entered values are lost when the form returns because of >>> successful submit, or due to errors. I have tried to use keepvalues=True in >>> the form.accepts() and form.process() methods. No luck. >>> Details below. >>> >>> Since the page am building has specific design needs, I went with the >>> option of a custom form, where I used the form.custom.* options quite a >>> bit. Therefore input fields in the form look like this >>> <input type="text" class="form-control >>> {{if form.errors.country:}}invalidinput{{pass}}" >>> id="country" name="country" >>> value="{{=form.custom.inpval['country']}}" >>> placeholder="{{=form.custom.comment['country']}}" >>> >>> Also the controller is coded as below >>> x = db(db.x.x_id == auth.user.id).select().first() >>> if x: >>> form = SQLFORM(db.x, record=x) >>> else: >>> form = SQLFORM(db.x) >>> pass >>> >>> >>> # process the form >>> if form.accepts(request.vars, formname='basicinfo_form', keepvalues= >>> True): >>> response.flash = 'Basic Information updated successfully.' >>> elif form.errors: >>> response.flash = 'The submitted form contains errors. The >>> fields in error are highlighted below.' >>> else: >>> response.flash = 'Please fill the form.' >>> pass >>> >>> return dict(form=form) >>> >>> I was thinking that maybe I should capture the request.vars and send it >>> back to the view alongwith the form. >>> If the request.vars.country value exists, then I use that, instead of >>> the form.custom.inpval['country']. This only makes the view code a bit more >>> verbose, but if it solves the problem, then nothing like it. >>> >>> Can anyone suggest what I could do to sort this out? >>> Thank you, >>> Kiran >>> >>> P.S: I did take a look at all the conversations in the forum about >>> keepvalues. None of them seemed to help me. Though I did find this one to >>> be interesting and am curious if this is sorted out already: >>> https://groups.google.com/forum/#!searchin/web2py/keepvalues$20on$20validate/web2py/MNEYo96Shzg/jjKZaMmfAgQJ >>> >>> -- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.