I am a web2py newbie, and I'm sure this is a very basic question, but I 
haven't found a post that addresses it exactly.

I am trying to create a form that modifies an existing record. My code, 
which is modeled after stuff I saw in the tutorial, looks like:

    if idToEdit :
        record = db.langResource(idToEdit)
        sqlForm = SQLFORM(db.langResource, record)    # update existing
    else :
        sqlForm = SQLFORM(db.langResource)   # create new
        
    if sqlForm.process(session=None, 
formname="langResource/create").accepted:
        response.flash = 'New resource added.'
    elif sqlForm.process(session=None, 
formname="langResource/modify").accepted:
        response.flash = 'Resource modified.'
    elif sqlForm.errors:
        response.flash = 'Form has errors.'
    else:
       response.flash = 'Please fill out the form.'
    return sqlForm

When idToEdit is set to something, the resulting form is nicely populated 
with the values of the existing record. However, when I press Submit, a new 
record is added with the changes, and with a new unique ID. The old record 
is still there.

I had originally tried to create the HTML by hand, so I could customize it, 
and had the same problem, so I thought my HTML was missing something. But 
using the SQLFORM directly does the same thing.

I did see this bit in the HTML: <input name="id" type="hidden" value="5" />  - 
and wondered if that is the magic bit that makes it know that it is 
supposed to update an existing record. But if so it doesn't seem to be 
working.

-- 
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.

Reply via email to