The title describes the problem.

Any suggestions as to what I might do?  Would it be simpler if I just 
uploaded to a directory?  I'm archiving for auditability, so I suppose 
there would still be a way to get at earlier versions of uploaded files.

Here is the model:

db.define_table('attachments',
        Field('attachment', 'upload', uploadfield='payload'),
        Field('filename', length=512),
        Field('Description', 'text'),
        Field('payload', 'blob'),
        migrate=init_migrate,
        )
Common fields are auth.signature and a field called "tenant_link", which is 
how I implemented the request_tenant functionality before Massimo announced 
it.

Here is the controller code:
   for r in rows:
        ...
        myfile = mypath + r.attachments.file_name + '.' + 
r.attachments.file_ext
        try:
            stream = open(myfile, 'rb')
        except IOError:
            no_finds.append(DIV('unable to find {}'.format(myfile)))
            continue
        else:
            ok.append(DIV('found {}.{}, aka {}'.format(
                r.attachments.file_name, r.attachments.file_ext, fname
                )))
            att_id = db2.attachments.insert(
                    attachment = db2.attachments.attachment.store(
                        stream, '{}.{}'.format(
                            r.attachments.file_name, r.attachments.file_ext
                            )
                        ),
                    filename = fname,
                    Description = 
r.attachments.attachment_brief_description,
                    )

The insert is successful except the payload field is never populated.  Here 
is a snippet  of the results from this postgres query, "SELECT id, 
filename, octet_length(payload) from attachments;"

  9 | apt-get-output.txt                                                   
               |        10772
  10 | a_h_hits.txt                                                         
               |        24164
  11 | a_h_hits.txt                                                         
               |        24164
  12 | greg-free-bizcard                                                   
                |       215288
  27 | Tank Thickness ML.doc                                               
                |             
  28 | Tank Thickness ML.doc(1)                                             
               |             
  29 | A short short file                                                   
               |             
  30 | hello.txt                                                           
                |        

Records 9, 10 and 11 were uploaded while testing the interface. Records 12 
and up were created using the above script.     

-- 



Reply via email to