Как исключить символы 'queryset' при использовании django sqlite orm

Я хочу отправлять почту многим пользователям с помощью django sendmail.

Я использую orm в sqlite3 для получения списка получателей, хранящихся в базе данных.

Однако результат orm включает 'queryset', поэтому почта не может быть отправлена. Есть ли способ исключить 'queryset' из результатов orm?

как есть

enter image description here

Я хочу

enter image description here

views.py

def send_form(request):
    if request.method == 'POST':
        selected_target = request.POST['target']
        target = contact.objects.filter(target=selected_target).values_list('email')
        return render(request, 'view/send_form.html', {'target': target})

def send_success(request):
    if request.method == 'POST':
        subject = request.POST['subject']
        recipient = request.POST['email']
        message = request.POST['message']
        send_mail(
            subject,
            message,
            recipient,
            [recipient],
            fail_silently=False,
        )
    return render(request, 'view/send_success.html')

отправить результат enter image description here

Queryset возвращает вам все (многие) применимые результаты, если вы хотите только one электронную почту, вместо filter используйте get,

target_email = contact.objects.get(target=selected_target).email

но при queryset (много писем) вы можете отправить на каждое письмо в списке queryset

target_emails = contact.objects.filter(target=selected_target)
for each_email in target_emails:
    target_email = each_email.email
    #this will output your needed email
    print(target_email)
    #and later do logic with target_email to send mail on it
Вернуться на верх