def get_path(space, hash):
return "/" + os.path.join( space, hash[:2], hash[2:] )
-
-def save_file(space, temp):
-
+
+def save_file(space, temp):
+
dest_root = os.path.join( config['app_conf']['static_root'], space )
-
+
# we don't know where we're going to save this stuff yet,
# so I guess we'll write it to another tempfile. One we know the path of.
- # I'm assuming the tempfile we get from pylons is set to delete itself
+ # I'm assuming the tempfile we get from pylons is set to delete itself
# when it closes, and has no visible path. Maybe I'm wrong?
intermediate_file_descriptor, intermediate_path = tempfile.mkstemp()
-
+
# that function gives me an integer file descriptor for some reason.
intermediate_file = os.fdopen(intermediate_file_descriptor, "wb")
-
+
sha1 = hashlib.sha1()
while 1:
data = temp.file.read(chunk_size)
dest_path = os.path.join( dest_dir, hash[2:] )
makedirs(dest_dir)
- os.rename(intermediate_path, dest_path)
+ shutil.move(intermediate_path, dest_path)
return hash
os.makedirs(dir)
except OSError:
pass
-
\ No newline at end of file
+