Как получить данные из админки с помощью форм Django?
Я хочу, чтобы при выборе пользователем нескольких пользователей, появлялась всплывающая форма и он мог отправлять электронные письма после отправки формы выбранным пользователям
Это admin.py
class ReplyForm(forms.Form):
message = forms.CharField(widget=forms.Textarea)
@admin.register(ContactUs)
class ContactUsAdmin(admin.ModelAdmin):
actions = ['reply_by_email']
list_display = ("id", "first_name", "last_name", "email",
"phone_number", "created_at", "message")
search_fields = ("first_name", "last_name", "email", "phone_number", "message")
def reply_by_email(self, request, queryset):
if request.POST:
form = ReplyForm(request.POST)
if form.is_valid():
subject = "Custom email from admin"
message = form.cleaned_data['message']
from_email = "admin@@example.com"
recipient_list = [user.email for user in queryset]
send_mail(subject, message, from_email, recipient_list)
else:
# check the form's errors
print(form.errors)
else:
form = ReplyForm(request.POST or None)
context = self.admin_site.each_context(request)
context['form'] = form
context['queryset'] = queryset
return TemplateResponse(request, "reply_by_email.html", context)
reply_by_email.short_description = "Send email to selected users"
это reply_by_email.html:
{% load i18n %}
{% block content %}
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" name="apply" value="Send Email">
</form>
{% endblock %}
когда админ заполняет форму ничего не происходит
Я ожидаю сообщения от пользователя