class documentation

class Storage:

Known subclasses: django.core.files.storage.FileSystemStorage

View In Hierarchy

A base storage class, providing some default behaviors that all other storage systems can inherit or override, as necessary.
Method delete Delete the specified file from the storage system.
Method exists Return True if a file referenced by the given name already exists in the storage system, or False if the name is available for a new file.
Method generate​_filename Validate the filename by calling get_valid_name() and return a filename to be passed to the save() method.
Method get​_accessed​_time Return the last accessed time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
Method get​_alternative​_name Return an alternative filename, by adding an underscore and a random 7 character alphanumeric string (before the file extension, if one exists) to the filename.
Method get​_available​_name Return a filename that's free on the target storage system and available for new content to be written to.
Method get​_created​_time Return the creation time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
Method get​_modified​_time Return the last modified time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
Method get​_valid​_name Return a filename, based on the provided filename, that's suitable for use in the target storage system.
Method listdir List the contents of the specified path. Return a 2-tuple of lists: the first item being directories, the second item being files.
Method open Retrieve the specified file from storage.
Method path Return a local filesystem path where the file can be retrieved using Python's built-in open() function. Storage systems that can't be accessed using open() should not implement this method.
Method save Save new content to the file specified by name. The content should be a proper File object or any Python file-like object, ready to be read from the beginning.
Method size Return the total size, in bytes, of the file specified by name.
Method url Return an absolute URL where the file's contents can be accessed directly by a web browser.
def delete(self, name):
Delete the specified file from the storage system.
def exists(self, name):
Return True if a file referenced by the given name already exists in the storage system, or False if the name is available for a new file.
def generate_filename(self, filename):
Validate the filename by calling get_valid_name() and return a filename to be passed to the save() method.
def get_accessed_time(self, name):
Return the last accessed time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
def get_alternative_name(self, file_root, file_ext):
Return an alternative filename, by adding an underscore and a random 7 character alphanumeric string (before the file extension, if one exists) to the filename.
def get_available_name(self, name, max_length=None):
Return a filename that's free on the target storage system and available for new content to be written to.
def get_created_time(self, name):
Return the creation time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
def get_modified_time(self, name):
Return the last modified time (as a datetime) of the file specified by name. The datetime will be timezone-aware if USE_TZ=True.
def get_valid_name(self, name):
Return a filename, based on the provided filename, that's suitable for use in the target storage system.
def listdir(self, path):
List the contents of the specified path. Return a 2-tuple of lists: the first item being directories, the second item being files.
def open(self, name, mode='rb'):
Retrieve the specified file from storage.
def path(self, name):
Return a local filesystem path where the file can be retrieved using Python's built-in open() function. Storage systems that can't be accessed using open() should not implement this method.
def save(self, name, content, max_length=None):
Save new content to the file specified by name. The content should be a proper File object or any Python file-like object, ready to be read from the beginning.
def size(self, name):
Return the total size, in bytes, of the file specified by name.
def url(self, name):
Return an absolute URL where the file's contents can be accessed directly by a web browser.