Как отправить письмо с уведомлением о комментарии с указанием url записи блога в Django?
У меня есть Django блог сайт и я хочу получать уведомления, когда любой пользователь комментирует мой сайт. Я хочу получать уведомление в виде электронного письма с указанием url записи блога. Вот мой код для отправки электронной почты.
#views.py
context = {
'domain': settings.DOMAIN_NAME,
'site_name': settings.SITE_NAME,
'protocol': 'http',
}
def comment_email_setting():
email_template_name = "email/comment_email.txt"
email = render_to_string(email_template_name, context)
mail_obj = CommentFormNotification.objects.latest('id')
send_mail(
mail_obj.subject,
email,
mail_obj.from_mail,
[mail_obj.to_mail],
fail_silently=False,
)
class PostDetailView(DetailView):
model = Post
context_object_name = 'posts'
form = CommentForm()
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['form'] = self.form
return context
def post(self, request, *args, **kwargs):
form = CommentForm(request.POST)
if form.is_valid():
post = self.get_object()
form.instance.user = request.user
form.instance.post = post
comment_email_setting()
form.save()
return redirect(reverse('post_detail', kwargs={'slug': post.slug}))
Это мой views.py. Когда кто-то оставляет комментарий к моей записи в блоге, я хочу получать url записи в блоге по электронной почте. Как я могу получить его?
#comment_email.txt
{% autoescape off %}
Hello,
We received a notification from post {{ protocol }}://{{ domain }}.
Sincerely,
The Website Team
{% endautoescape %}