Thanks again. > > SQLFORM(...,hidden=dict(a="b") > I would never have guessed that!
But after reading: http://groups.google.com/group/web2py/browse_thread/thread/401b4c192871194c/0758463de805d92b, I don't think sqlform.factory is able to do what I want it to do. I want to basically display ALL rows of a table given this database so it looks like: http://i.imgur.com/aqb8H.png (I did this by processing request.vars manually and custom html) db.define_table('Item', Field('description'), Field('need', 'boolean'), Field('image', 'upload')) > > > > 2) Since we're building the form with values from the DB in the > > beginning of the function, then updating the DB, then returning the > > form, the view gets a stale copy of the form. I guess you could solve > > this with a redirect if form.accepts() is true? Seems hackish... > > Can you provide a text case? > given this controller and the above db: def update(): item = request.args(0) form = crud.update(db.Item, item) form.accepts(request.vars, session, keepvalues=True) return dict(form=form) The issue above was solved by calling form.accepts(request.vars, session) - it now does the right thing. The remaining issue is with the image upload. After I choose an image, press 'Submit', the page refreshes but the image does not show. Now if I refresh the page it shows. The same goes when I check the 'delete' checkbox and press 'submit' - the image still appears until the page is refreshed. Thanks for your answers, I really appreciate it!

