I have a form, so i have to submit twice to see changes in database, on
first submit data is null
import json
record = db(db.sf_contract.sf_login_id == auth.user.id).select().first()
form_ccdata =
json.dumps({"credit_card_type":request.vars.credit_card_type,"card_holder_name":request.vars.card_holder_name,"credit_card_number":request.vars.credit_card_number,"cvc2":request.vars.cvc2,"expiration_year":request.vars.expiration_year,"expiration_month":request.vars.expiration_month})
contract_form = SQLFORM(db.sf_contract, record,
hidden=dict(ccdata=form_ccdata))
try:
ccdata = json.loads(record.ccdata)
except Exception, e:
ccdata =
json.loads('{"credit_card_type":"test","card_holder_name":"test","credit_card_number":"test","cvc2":"test","expiration_year":"test","expiration_month":"test"}')
input_credit_card_type = SELECT(_name='credit_card_type',
_value=ccdata['credit_card_type'], _class='form-control input-sm')
input_card_holder_name =
INPUT(_name='card_holder_name',_type='text',_value=ccdata['card_holder_name'],
_class='form-control input-sm')
input_credit_card_number = INPUT(_name='credit_card_number', _type='text',
_value=ccdata['credit_card_number'], _class='form-control input-sm')
input_cvc2 = INPUT(_name='cvc2', type='text', _value=ccdata['cvc2'],
_class='form-control input-sm')
input_expiration_year = INPUT(_name='expiration_year',_type='text',
_value=ccdata['expiration_year'], _class='form-control input-sm')
input_expiration_month = INPUT(_name='expiration_month', _type='text',
_value=ccdata['expiration_month'], _class='form-control input-sm')
contract_form[0].insert(-1,[input_credit_card_type,input_card_holder_name,
input_credit_card_number, input_cvc2,
input_expiration_year,input_expiration_month])
if contract_form.process().accepted:
response.flash = show_alert('alert-success', 'Data saved')
elif contract_form.errors:
response.flash = show_alert('alert-warning', 'Form has errors')
return dict(contract_form=contract_form)
as i undersand on first instance when i visit url for this function
request.vars should be null, because there is no form submision and the
same on first submit, but on second submit data is saved.
how can i fix this to save on first submit?
--
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.