When accessing to the name of the field itself, the value
    in the current language will be returned. Unless it's set,
    the value in the default language will be returned.

def default_value_getter(field):
    """
    When accessing to the name of the field itself, the value
    in the current language will be returned. Unless it's set,
    the value in the default language will be returned.
    """

    def default_value_func_getter(self):
        localized_field = utils.build_localized_field_name(
            field, self._linguist.active_language
        )
        value = getattr(self, localized_field)
        if value:
            return value

        default_field = utils.build_localized_field_name(field, self.default_language)
        return getattr(self, default_field)

    return default_value_func_getter