Exemplo n.º 1
0
    def get_environ(self, key, default=None, cast=None):
        """Get value from environment variable using os.environ.get

        :param key: The name of the setting value, will always be upper case
        :param default: In case of not found it will be returned
        :param cast: Should cast in to @int, @float, @bool or @json ?
         or cast must be true to use cast inference
        :return: The value if found, default or None
        """
        key = upperfy(key)
        data = self.environ.get(key, default)
        if data:
            if cast in converters:
                data = converters.get(cast)(data)
            if cast is True:
                data = parse_conf_data(data, tomlfy=True)
        return data
Exemplo n.º 2
0
 def get(self, key, default=None, cast=None, fresh=False):
     """
     Get a value from settings store, this is the prefered way to access
     >>> from dynaconf import settings
     >>> settings.get('KEY')
     :param key: The name of the setting value, will always be upper case
     :param default: In case of not found it will be returned
     :param cast: Should cast in to @int, @float, @bool or @json ?
     :param fresh: Should reload from loaders store before access?
     :return: The value if found, default or None
     """
     key = key.upper()
     if fresh or self._fresh or key in self.DYNACONF_ALWAYS_FRESH_VARS:
         self.execute_loaders(key=key)
     data = self.store.get(key, default)
     if cast:
         data = converters.get(cast)(data)
     return data
Exemplo n.º 3
0
 def get(self, key, default=None, cast=None, fresh=False):
     """
     Get a value from settings store, this is the prefered way to access
     >>> from dynaconf import settings
     >>> settings.get('KEY')
     :param key: The name of the setting value, will always be upper case
     :param default: In case of not found it will be returned
     :param cast: Should cast in to @int, @float, @bool or @json ?
     :param fresh: Should reload from loaders store before access?
     :return: The value if found, default or None
     """
     key = key.upper()
     if fresh or self._fresh or key in self.DYNACONF_ALWAYS_FRESH_VARS:
         self.execute_loaders(key=key)
     data = self.store.get(key, default)
     if cast:
         data = converters.get(cast)(data)
     return data
Exemplo n.º 4
0
    def get(self,
            key,
            default=None,
            cast=None,
            fresh=False,
            dotted_lookup=True):
        """
        Get a value from settings store, this is the prefered way to access::

            >>> from dynaconf import settings
            >>> settings.get('KEY')

        :param key: The name of the setting value, will always be upper case
        :param default: In case of not found it will be returned
        :param cast: Should cast in to @int, @float, @bool or @json ?
        :param fresh: Should reload from loaders store before access?
        :param dotted_lookup: Should perform dotted-path lookup?
        :return: The value if found, default or None
        """
        key = key.upper()

        if "." in key and dotted_lookup:
            return self._dotted_get(dotted_key=key,
                                    default=default,
                                    cast=cast,
                                    fresh=fresh)

        if key in self._deleted:
            return default

        if (fresh or self._fresh
                or key in getattr(self, "FRESH_VARS_FOR_DYNACONF",
                                  ())) and key not in dir(default_settings):
            self.unset(key)
            self.execute_loaders(key=key)

        store = self._memoized or self.store
        data = store.get(key, default)
        if cast:
            data = converters.get(cast)(data)
        return data