Hi i am working to build a multi-tenant application which has a company table which stores logo and other data. I defined a company table, added extra fields in auth_user and created an action (simplified version) like below. web2py uploaded the logo image file under myapp/uploads/company.logo/af/company.logo.afxxxxxxxx.png, but according to the document(applications/test/uploads/person.image.XXXXX.jpg), I should not have had the company.log/af directories, could anyone explain why?
So when I created my invoice with an upload field called attachment, I only used SQLFORM(db.invoice).process(), web2py put the attachment file under myapp/uploads, there is no extra invoice.attachment/xx directories created, and this matches what the documentation says. could anyone advise why they have different folder structure? Now if I want to add the company_id as part of the directory structure eg. myapp/uploads/company_id/company.logo.XXXXX.jpg, how should i define the table FIELD(... uploadfolder=???, ...) Many thanks in advance! ############ db.define_table('company', Field('company_name', requires=IS_NOT_EMPTY(), unique=True), Field('phone'), Field('company_email', requires=IS_NOT_EMPTY()), Field('website'), Field('logo', 'upload', label='Company Logo', uploadfolder=os.path.join(request.folder,'uploads'), uploadseparate=True), # 23x23mm, 300K recommended Field('status', requires=IS_IN_SET(COMPANY_STATUS), default='Active', readable=False, writable=False), format='%(company_name)s') auth.settings.extra_fields['auth_user']= [ Field('mobile', requires=IS_NOT_EMPTY()), Field('company_id', 'integer', writable=False), ] def initialization(): db.auth_user.company_id.readable= False init_form = SQLFORM.factory(db.company, db.auth_user, formstyle='table3cols', table_name='company') if init_form.process().accepted: company_id = db.company.insert(**db.company._filter_fields(init_form.vars)) user_id = db.auth_user.insert(**db.auth_user._filter_fields(init_form.vars)) user_row = db.auth_user(user_id) user_row.update_record(company_id=company_id) session.flash='You have created your company profile, admin user.' redirect(URL('index')) elif init_form.errors: response.flash='Error in initialization(), please make sure your company has not been registered before or the data you entered meet the form validation.' else: pass return locals() -- 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/d/optout.