コード例 #1
0
 def create_source_code(self, box, price):
     ''' Save file data and create object in database '''
     description = unicode(self.get_argument('description', ''))
     file_name = unicode(
         self.request.files['source_archive'][0]['filename']
     )
     source_code = SourceCode(
         file_name=file_name,
         box_id=box.id,
         price=price,
         description=description,
     )
     self.dbsession.add(source_code)
     self.dbsession.flush()
     file_data = self.request.files['source_archive'][0]['body']
     root = self.application.settings['source_code_market_dir']
     save_file = open(str(root + '/' + source_code.uuid), 'w')
     source_code.checksum = self.get_checksum(file_data)
     save_file.write(file_data.encode('base64'))
     save_file.close()
     self.dbsession.add(source_code)
     self.dbsession.commit()