Shark, the upload field will work (though you might have to pass the flag to tell it to store the file in the DB). it's been a while since i have used that on GAE.
if your uploaded file will be larger than 1MB (the current limit for blob fields assuming the online docs here are correct http://code.google.com/appengine/docs/python/datastore/datamodeling.html#Property_Classes_and_Types), then you can try storing in the blobstore: http://www.web2pyslices.com/slices/take_slice/63

