显示基于类的视图的成功消息

问题描述 投票:3回答:3

[我想使用Django的消息传递框架和基于类的视图,并在下面显示代码,但在保存行时显示一条成功消息,但不显示该消息。

非常感谢您的帮助

#views.py

from django.views.generic import ListView, CreateView, UpdateView, TemplateView
from django.contrib.messages.views import SuccessMessageMixin

class CreateEmployee(SuccessMessageMixin, CreateView):
    model = Employee
    template_name = 'employees/create.html'
    form_class = frmCreate

    def get_success_url(self):
       return reverse('Employees:Create')

    def get_context_data(self, **kwargs):
        contexto = super(CreateEmployee, self).get_context_data(**kwargs)
        contexto['action'] = reverse('Employees:Create')
        return contexto

    success_message = 'Employee successful created'



#template
#create.html

<form action="{{ action }}" method="POST" role="form">
    {% csrf_token %}

    {{ form.as_p }}

    <input type="submit" value="Save" class="btn btn-success">
<form>

{% if messages %}
    <div class="col-lg-3 color03">
        <ul class="messages">
            {% for message in messages %}
                <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
            {% endfor %}
        </ul>
    </div>
{% endif %}
django django-messages
3个回答
3
投票

只需像这样使用self.request

from django.contrib import messages
messages.add_message(self.request, messages.INFO, 'Hello world.')

0
投票

您必须在settings.py中设置邮件存储空间>

MESSAGE_STORAGE = 'django.contrib.messages.storage.session.SessionStorage'

问候


0
投票

使用Django 2.2,并且根据文档here,这是我自己在基于CLASS的视图上所做的工作:

© www.soinside.com 2019 - 2024. All rights reserved.