Я не могу отправить электронное письмо в приложении django backend
Когда я могу отправить почтовый запрос для представления контакта, блок try не может быть запущен, а блок except должен быть запущен. Здесь я не могу отправить почту. Ошибка в функции send_mail. Пожалуйста, помогите мне.
view.py
from rest_framework import permissions
from rest_framework.views import APIView
from .models import Contact
from django.core.mail import
send_mail,EmailMessage
from rest_framework.response import Response
class ContactCreateView(APIView):
permission_classes = (permissions.AllowAny, )
def post(self, request, format=None):
data = self.request.data
print(data)
try:
send_mail(
data['subject'],
'Name: '+ data['name']
+ '\nEmail: '+data['email']+'\nMessage:'+ data['message'],
'kalpprajapati2002@gmail.com',
['kalp2002prajapati@gmail.com'],
fail_silently=False
)
contact = Contact(name=data['name'], email=data['email'], subject=data['subject'], message=data['message'])
contact.save()
return Response({'success': 'Message sent successfully'})
except:
return Response({'error': 'Message failed to send'})
urls.py
from django.urls import path
from .views import ContactCreateView
urlpatterns = [
path('',ContactCreateView.as_view())
]
models.py
from django.db import models
from datetime import datetime
class Contact(models.Model):
name=models.CharField(max_length=200)
email=models.CharField(max_length=100)
subject=models.CharField(max_length=100)
message=models.TextField(blank=True)
contact_date=models.DateTimeField(default=datetime.now,blank=True)
def __str__(self):
return self.email
просто удалите все self из представления, вам нужен только запрос. Если это не заставит ваш код работать, опубликуйте ошибку, которую вы получаете