mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #34110 -- Added in-memory file storage.
Thanks Paolo Melchiorre, Carlton Gibson, and Mariusz Felisiak for reviews.
This commit is contained in:
committed by
Mariusz Felisiak
parent
04fdf71933
commit
72efd840a8
@@ -74,6 +74,39 @@ The ``FileSystemStorage`` class
|
||||
time of the last metadata change, and on others (like Windows), it's
|
||||
the creation time of the file.
|
||||
|
||||
The ``InMemoryStorage`` class
|
||||
=============================
|
||||
|
||||
.. versionadded:: 4.2
|
||||
|
||||
.. class:: InMemoryStorage(location=None, base_url=None, file_permissions_mode=None, directory_permissions_mode=None)
|
||||
|
||||
The :class:`~django.core.files.storage.InMemoryStorage` class implements
|
||||
a memory-based file storage. It has no persistence, but can be useful for
|
||||
speeding up tests by avoiding disk access.
|
||||
|
||||
.. attribute:: location
|
||||
|
||||
Absolute path to the directory name assigned to files. Defaults to the
|
||||
value of your :setting:`MEDIA_ROOT` setting.
|
||||
|
||||
.. attribute:: base_url
|
||||
|
||||
URL that serves the files stored at this location.
|
||||
Defaults to the value of your :setting:`MEDIA_URL` setting.
|
||||
|
||||
.. attribute:: file_permissions_mode
|
||||
|
||||
The file system permissions assigned to files, provided for
|
||||
compatibility with ``FileSystemStorage``. Defaults to
|
||||
:setting:`FILE_UPLOAD_PERMISSIONS`.
|
||||
|
||||
.. attribute:: directory_permissions_mode
|
||||
|
||||
The file system permissions assigned to directories, provided for
|
||||
compatibility with ``FileSystemStorage``. Defaults to
|
||||
:setting:`FILE_UPLOAD_DIRECTORY_PERMISSIONS`.
|
||||
|
||||
The ``Storage`` class
|
||||
=====================
|
||||
|
||||
|
||||
@@ -85,6 +85,12 @@ The Breach (HTB) paper`_.
|
||||
|
||||
.. _Heal The Breach (HTB) paper: https://ieeexplore.ieee.org/document/9754554
|
||||
|
||||
In-memory file storage
|
||||
----------------------
|
||||
|
||||
The new ``django.core.files.storage.InMemoryStorage`` class provides a
|
||||
non-persistent storage useful for speeding up tests by avoiding disk access.
|
||||
|
||||
Minor features
|
||||
--------------
|
||||
|
||||
|
||||
@@ -366,3 +366,12 @@ Preserving the test database
|
||||
The :option:`test --keepdb` option preserves the test database between test
|
||||
runs. It skips the create and destroy actions which can greatly decrease the
|
||||
time to run tests.
|
||||
|
||||
Avoiding disk access for media files
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. versionadded:: 4.2
|
||||
|
||||
The :class:`~django.core.files.storage.InMemoryStorage` is a convenient way to
|
||||
prevent disk access for media files. All data is kept in memory, then it gets
|
||||
discarded after tests run.
|
||||
|
||||
Reference in New Issue
Block a user