Реализация функции по нажанию на кнопку Django

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

<div class="col-4">
    
    <a class="btn btn-warning" href="{% url 'home' %}" role="button">Save and Back</a>
    {{ request | mail}}
    
</div>

В home я наверное не могу запихнуть filter tag, так ка уже использую этот вид в другом месте. Как можно это реализовать. Пробовал что-то в таком роде: <a class="btn btn-warning" href="{% url 'team_gpds' %}?{{ request | mail}}" role="button">Save and Send</a> но это работает идентично.

my view.py

@login_required(login_url='login')
def home(request):
    
    # logined user block
    user = get_user(request)
    user_gpds = get_user_gpd(user)

    context ={'user':user, 'user_gpds':user_gpds, 'is_manager':log_user_is_manager(request)}
    return render(request, 'app/home_page/home_page.html', context)

my filter tag:

import re
from django import template
from django.core.mail import send_mail
register = template.Library()
from django.template.loader import render_to_string


@register.filter
def mail(request):
    msg_plain = render_to_string('app/team_gpds/email.txt', {'request': request})
    return send_mail(
    'System Notification: Please accept GPD',
    msg_plain,
    '.......',
    ['....@....',],
    fail_silently=False,
    )

my email.txt:

Follow the White Rabbit:

{{ request.scheme }}://{{ request.get_host }}{% url 'home' %}

my url.py:

path('home/', views.home, name="home"),

В мой filter tag я буду передавать не только request, а и еще один параметр.

Вернуться на верх