отображение сообщения об успехе для пользователя в django - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь показать пользователю сообщение об успешном завершении после успешной регистрации, чтобы сообщить им, что его учетная запись создана и они вошли в систему. Я хочу перенаправить пользователя на домашнюю страницу после регистрации. Пользователь перенаправлен, но сообщения не отображаются.

Мой шаблон (используя материализацию для всплывающего сообщения):

{% if messages %}
    {% for message in messages %}
        {% if message.tags == 'success'%}
            <script>M.toast({html: "{{message}}", classes: 'green rounded', displayLength:2000});</script>
        {% elif message.tags == 'info'%}
            <script>M.toast({html: "{{message}}", classes: 'blue rounded', displayLength:2000});</script>
        {% elif message.tags == 'warning'%}
            <script>M.toast({html: "{{message}}", classes: 'orange rounded', displayLength:10000});</script>
        {% elif message.tags == 'error'%}
            <script>M.toast({html: "{{message}}", classes: 'red rounded', displayLength:10000});</script>
        {% endif %}
    {% endfor %}
{% endif %}

Мой взгляд:

def register(request):
if request.method == "POST":
    form = UserCreationForm(request.POST)
    if form.is_valid():
        user = form.save()
        username = form.cleaned_data.get('username')
        messages.success(request, f'New Account Created: {username}')
        login(request, user)
        messages.info(request, f"You are now logged in {username}")
        return redirect("juicy:homepage")
    else:
        for msg in form.error_messages:
            messages.error(request, f"{msg}: {form.error_messages[msg]}")

form = UserCreationForm
return render(request,
              "juicy/register.html",
              context={"form": form})
...