我们从Python开源项目中,提取了以下24个代码示例,用于说明如何使用django.contrib.messages()。
def message_user(self, message, level='info'): """ Send a message to the user. The default implementation posts a message using the django.contrib.messages backend. """ if hasattr(messages, level) and callable(getattr(messages, level)): getattr(messages, level)(self.request, message)
def message_user(self, message, level='info'): """ debug error info success warning posts a message using the django.contrib.messages backend. """ if hasattr(messages, level) and callable(getattr(messages, level)): getattr(messages, level)(self.request, message)
def message_user(self, message, level='info'): """ Send a message to the user. The default implementation posts a message using the django.contrib.messages backend. """ if hasattr(messages, level) and isinstance(getattr(messages, level), collections.Callable): getattr(messages, level)(self.request, message)
def _get_messages_from_response_cookies(self, response): """ Get django messages set in response cookies. """ # pylint: disable=protected-access try: return messages.storage.cookie.CookieStorage(response)._decode(response.cookies['messages'].value) except KeyError: # No messages stored in cookies return None
def _assert_django_test_client_messages(self, test_client_response, expected_log_messages): """ Verify that expected messages are included in the context of response. """ response_messages = [ (msg.level, msg.message) for msg in test_client_response.context['messages'] # pylint: disable=no-member ] assert response_messages == expected_log_messages
def add(request, message_type): # don't default to False here, because we want to test that it defaults # to False if unspecified fail_silently = request.POST.get('fail_silently', None) for msg in request.POST.getlist('messages'): if fail_silently is not None: getattr(messages, message_type)(request, msg, fail_silently=fail_silently) else: getattr(messages, message_type)(request, msg) show_url = reverse('django.contrib.messages.tests.urls.show') return HttpResponseRedirect(show_url)
def add_template_response(request, message_type): for msg in request.POST.getlist('messages'): getattr(messages, message_type)(request, msg) show_url = reverse('django.contrib.messages.tests.urls.show_template_response') return HttpResponseRedirect(show_url)
def process_response(self, request, response): """Convert HttpResponseRedirect to HttpResponse if request is via ajax to allow ajax request to redirect url """ if request.is_ajax() and hasattr(request, 'horizon'): queued_msgs = request.horizon['async_messages'] if type(response) == http.HttpResponseRedirect: # Drop our messages back into the session as per usual so they # don't disappear during the redirect. Not that we explicitly # use django's messages methods here. for tag, message, extra_tags in queued_msgs: getattr(django_messages, tag)(request, message, extra_tags) if response['location'].startswith(settings.LOGOUT_URL): redirect_response = http.HttpResponse(status=401) # This header is used for handling the logout in JS redirect_response['logout'] = True if self.logout_reason is not None: utils.add_logout_reason( request, redirect_response, self.logout_reason) else: redirect_response = http.HttpResponse() # Use a set while checking if we want a cookie's attributes # copied cookie_keys = set(('max_age', 'expires', 'path', 'domain', 'secure', 'httponly', 'logout_reason')) # Copy cookies from HttpResponseRedirect towards HttpResponse for cookie_name, cookie in six.iteritems(response.cookies): cookie_kwargs = dict(( (key, value) for key, value in six.iteritems(cookie) if key in cookie_keys and value )) redirect_response.set_cookie( cookie_name, cookie.value, **cookie_kwargs) redirect_response['X-Horizon-Location'] = response['location'] return redirect_response if queued_msgs: # TODO(gabriel): When we have an async connection to the # client (e.g. websockets) this should be pushed to the # socket queue rather than being sent via a header. # The header method has notable drawbacks (length limits, # etc.) and is not meant as a long-term solution. response['X-Horizon-Messages'] = json.dumps(queued_msgs) return response