summaryrefslogtreecommitdiff
path: root/django/core/files/storage/mixins.py
blob: 663a163beae1f8780a88003792849fbd7b201fd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class StorageSettingsMixin:
    def _clear_cached_properties(self, setting, **kwargs):
        """Reset setting based property values."""
        if setting == "MEDIA_ROOT":
            self.__dict__.pop("base_location", None)
            self.__dict__.pop("location", None)
        elif setting == "MEDIA_URL":
            self.__dict__.pop("base_url", None)
        elif setting == "FILE_UPLOAD_PERMISSIONS":
            self.__dict__.pop("file_permissions_mode", None)
        elif setting == "FILE_UPLOAD_DIRECTORY_PERMISSIONS":
            self.__dict__.pop("directory_permissions_mode", None)

    def _value_or_setting(self, value, setting):
        return setting if value is None else value