Hello! I have a problem with upload field.
I tried to upload a file through one form with two tables using SQLFORM.factory. It worked OK on web2py rocket server. But with GAE server (both local test server and real GAE server), I can't upload files. The problem is blob is None after uploaded. I defined two tables. db.define_table('mibmessage', Field('user',db.auth_user,writable=False,readable=False, default=auth.user_id,), Field('message','text',notnull=True, widget = lambda field, value: SQLFORM.widgets. text.widget(field, value, _class='my-string')), Field('attached_files','list:reference attached_file',writable =False, default=[], readable=False), ) db.define_table('attached_file', Field('file','upload'), Field('original_filename', writable=False, notnull=False ), Field('mibmessage',db.mibmessage), ) And in controller, I saved them. # Make a form form = SQLFORM.factory(db.mibmessage, db.attached_file, table_name= 'attached_file') # Save New Message if form.process().accepted: try: # Insert a message message_id = db.mibmessage.insert(**db.mibmessage._filter_fields (form.vars)) form.vars.mibmessage=message_id if form.vars.file != '': form.vars.original_filename = request.vars.file.filename # Insert an attached file image_file_id = db.attached_file.insert(**db.attached_file. _filter_fields(form.vars)) # The message has a list of attached files db.mibmessage[message_id].update_record(attached_files=[ image_file_id]) db.commit() except Exception: db.rollback() After uploaded, both rows are created. But 'file_blob' field of the 'attached_file' is None. If I upload an file using SQLFORM with single table (attached_file), it is OK. Did I use SQLFORM.factory wrong? I read this thread ( https://groups.google.com/forum/?fromgroups#!searchin/web2py/SQLFORM.factory$20one$20form$20multiple$20tables$20blob/web2py/O6D1J8h_MNA/lmFbEF1XzWcJ%5B1-25%5D), but I couldn't understand it. --