Ejemplo n.º 1
0
def handle_uploaded_file(f, user):
    username = user.username
    os.system('mkdir %(user)s'%{'user':username}) 
    destination = open('%(user)s/%(name)s'%{'user':username, 'name':f.name},'wb+')
    for chunk in f.chunks():
        destination.write(chunk)
    destination.close()
    for old in UploadedFile.objects.filter(name = f.name):
        old.delete()
    uFile = UploadedFile(name = f.name, username = username, local_path = '%(user)s/%(name)s'%{'user':username, 'name':f.name})
    uFile.save()
    #prof = Profile.objects.get(user = user)
    acc = Account.objects.get(user = user)
    acc.files.add(uFile)
    acc.save()
    return uFile
    def test(self):
        filename = 'up-' + rand_string()
        contents = 'upladded contestsn'
    
        a = UploadedFile(
            uploader = self.test_user,
        )
        a.uploaded_file.save(filename, ContentFile(contents))
        a.clean()
        a.save()

        # TODO self.assertEqual(a.url,?)
        # TODO self.assertEqual(a.path,?)

        self.assertEqual(a.specific_instance(), a)
        self.assertEqual(a.document_ptr.__class__, Document)
        self.assertNotEqual(a.document_ptr.__class__, UploadedFile)
        self.assertEqual(a.document_ptr.specific_instance(), a)
        self.assertEqual(a.document_ptr.specific_instance().__class__, UploadedFile)