I thought I was on the correct path with this can soemone tell me where this is going wrong?
db.define_table('consumer', Field <http://127.0.0.1:8000/examples/global/vars/Field>('lname','string', requires=IS_NOT_EMPTY <http://127.0.0.1:8000/examples/global/vars/IS_NOT_EMPTY>()), Field <http://127.0.0.1:8000/examples/global/vars/Field>('fname','string', requires=IS_NOT_EMPTY <http://127.0.0.1:8000/examples/global/vars/IS_NOT_EMPTY>()), Field <http://127.0.0.1:8000/examples/global/vars/Field>('address','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('city','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('stayte','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('zip','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('h_phone','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('c_phone','string'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('adm_date','date'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('dob','date'), Field <http://127.0.0.1:8000/examples/global/vars/Field>('pod','string'), auth.signature, #creates fields: created_on, created_by, modified_on, modified by, is_active format= lambda r: r.fname + ' ' + r.lname #substitutes consumer.id for consumer name ) db.define_table('files', Field <http://127.0.0.1:8000/examples/global/vars/Field>('name', unique=True, length=255), Field <http://127.0.0.1:8000/examples/global/vars/Field>('phile', 'upload', custom_store=lambda file, filename, path: store_file(file, filename, path), custom_retrieve=lambda filename, path: retrieve_file(filename, path) ), Field <http://127.0.0.1:8000/examples/global/vars/Field>('consumerid', 'reference consumer'), auth.signature) def store_file(file, filename=None, path=None): path = "applications/facesheet/uploads" if not os.path.exists(path): os.makedirs(path) pathfilename = os.path.join(path, filename) dest_file = open(pathfilename, 'wb') try: shutil.copyfileobj(file, dest_file) finally: dest_file.close() return filename def retrieve_file(filename, path=None): path = "applications/facesheet/uploads" return (filename, open(os.path.join(path, filename), 'rb')) def upload(): var = request <http://127.0.0.1:8000/examples/global/vars/request>.args(0) var1 = request <http://127.0.0.1:8000/examples/global/vars/request>.args(1) var2 = request <http://127.0.0.1:8000/examples/global/vars/request>.args(2) form=SQLFORM <http://127.0.0.1:8000/examples/global/vars/SQLFORM>(db.files, upload=URL <http://127.0.0.1:8000/examples/global/vars/URL>("download")) form.vars.consumerid = var if form.process().accepted: response <http://127.0.0.1:8000/examples/global/vars/response>.flash = "files updated" query=(db.files.consumerid==var) form2=SQLFORM <http://127.0.0.1:8000/examples/global/vars/SQLFORM>.grid(query, args=[var, var1, var2], paginate=1, details=False, searchable=False, editable=False, csv=False, create=False, deletable=False, user_signature=False) return locals() def download(): if not request <http://127.0.0.1:8000/examples/global/vars/request>.args: raise HTTP <http://127.0.0.1:8000/examples/global/vars/HTTP>(404) name = request <http://127.0.0.1:8000/examples/global/vars/request>.args[-1] field = db["files"]["phile"] try: (filename, file) = field.retrieve(name) except IOError: raise HTTP <http://127.0.0.1:8000/examples/global/vars/HTTP>(404) #response.headers["Content-Type"] = c.contenttype(name) response <http://127.0.0.1:8000/examples/global/vars/response>.headers["Content-Disposition"] = "attachment; filename=%s" % name stream = response <http://127.0.0.1:8000/examples/global/vars/response>.stream(file, chunk_size=64*1024, request <http://127.0.0.1:8000/examples/global/vars/request>=request <http://127.0.0.1:8000/examples/global/vars/request>) raise HTTP <http://127.0.0.1:8000/examples/global/vars/HTTP>(200, stream, **response <http://127.0.0.1:8000/examples/global/vars/response>.headers) *The upload functionality is working fine stores the relative information in the database* *and saves the file on the server which i wanted the problem is when someone clicks on the file * *from the form2 within the upload method. The link is **http://127.0.0.1:8000/facesheet/default/upload/1/John/Smith/download/test3.docx.* *This brings back a 404 tried so many different examples on the web the few that are out there atleast* *but I keep running into a brick wall. Thank You in advance.* -- 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.