Django Форма отправки электронной почты, как добавить значение из другой модели, установленной через внешний ключ
Я пытаюсь создать форму билета, которая отправляет Email. Все работает хорошо, но есть поле внешнего ключа, я извлекаю данные из него в этот тикет, я не могу включить их в тело письма.
views.py
def createTicket(request):
form = TicketForm(request.POST)
if request.method == 'POST':
if form.is_valid():
subject = "Ticket Email"
body = {
'customer': form.cleaned_data.get('customer'),
'subject': form.cleaned_data.get('subject'),
'priority': form.cleaned_data.get('priority'),
'details': form.cleaned_data.get('details'),
}
message = "\n".join(body.values())
form.save()
try:
send_mail(subject, message, 'from_email', [form.cleaned_data.get('technician_email')])
except BadHeaderError:
return HttpResponse('Invalid Header')
return redirect('/')
context = {'form': form}
return render(request, 'ticket_form.html', context)
models.py
class Ticket(models.Model):
PRIORITY = (
('normal', 'Normal'),
('urgent', 'Urgent')
)
STATUS = (
('pending', 'Pending'),
('hold', 'Hold'),
('closed', 'Closed')
)
customer = models.ForeignKey(Customer, null=True, on_delete=models.SET_NULL)
technician = models.CharField(max_length=255, null=True)
technician_email = models.CharField(max_length=255, null=True)
subject = models.CharField(max_length=255, blank=True, null=True)
priority = models.CharField(max_length=255, blank=True, null=True, choices=PRIORITY)
details = models.CharField(max_length=2000, blank=True, null=True)
class Customer(models.Model):
company_name = models.CharField(max_length=255, null=True)
Customer_type = models.ManyToManyField(Customertype, blank=True)
first_name = models.CharField(max_length=255, null=True)
last_name = models.CharField(blank=True, max_length=255, null=True)
Теперь внешний ключ "customer", я не могу получить данные, какой правильный метод извлечения значения из этого поля. Я получаю следующую ошибку:
Тип исключения: TypeError
Значение исключения:
элемент последовательности 0: ожидается экземпляр str, Клиент найден
Помогите пожалуйста