Тост с сообщением Django CreateView Как показать

Я новичок в Django и создаю CRUD. Однако я хочу показать сообщение Success в тосте при успешном сабмите, но я не знаю, как именно это сделать. Класс представления после вставки корректно перенаправляет в List, но сообщения не показывает. Вот мой класс представления

class AlmacenesCreateView(SuccessMessageMixin, CreateView):
    model = Almacen
    form_class = AlmacenesForm
    template_name = 'pages/create.html'  
    success_url = reverse_lazy('almacenes')
    success_message = "Bien!!!!"

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['title'] = "New Almacen"   
        return context

А это сценарий для тоста

  $(function () {
    let mensaje ="{{ messages.0 }}";
    const Toast = Swal.mixin({
      toast: true,
      position: 'top-end',
      showConfirmButton: false,
      timer: 3000
    });
    if (mensaje != "") {
      Toast.fire({
            icon: 'success',
            title: mensaje,
          })
    }
});

Мое сомнение в том, как я могу показать сообщение об успехе

Следовали ли вы документации здесь и здесь :

В своем шаблоне используйте что-то вроде:

{% if messages %}
<ul class="messages">
    {% for message in messages %}
    <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
    {% endfor %}
</ul>
{% endif %}

Затем вы можете проверить в консоли, нет ли у вас ошибок Javascript для вашего кода. Я никогда не использовал библиотеку Swal.

Вы должны перебирать сообщения и затем выводить иконку соответственно

{% for message in messages %}
    <script>
        $(function () {
            let mensaje ="{{ message }}";
            const Toast = Swal.mixin({
            toast: true,
            position: 'top-end',
            showConfirmButton: false,
            timer: 3000
            });
            if (mensaje != "") {
                Toast.fire({
                    icon: "{% if message.tags %}{{ message.tags }}{% endif %}",
                    title: mensaje,
                })
            }
        });
    </script>
{% endfor %}

Вы даже можете рассмотреть возможность использования таких вещей

Swal.fire({
        title: "Thank you?",
        text: "success message here",
        type: "success",
        showCancelButton: true,
        confirmButtonColor: "#DD6B55",
        confirmButtonText: "Yes, delete it!",
        closeOnConfirm: false
    }, function() {
        swal("Successful!", "success message here", "success");
    });
});
Вернуться на верх