首页 > 解决方案 > 保存用户数据后发送电子邮件 Django

问题描述

我想在保存数据后向用户发送电子邮件我如何将“first_name”之类的数据传递给电子邮件功能我如何在没有数据的情况下传递数据我可以调用电子邮件功能它的工作。

from Email import views as em

    @api_view(['GET', 'POST'])
@permission_classes((IsAuthenticated, ))
def CustomerAPI(request):
    if request.method == 'GET':
        snippets = Customer.objects.all()
        serializer = CustomerSerializer(snippets, many=True)
        return Response({"Customer_List": serializer.data})


    elif request.method == 'POST':
        serializer = CustomerSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            #em.email_send1(request, first_name='SOURABH', middle_name='k', last_name='SAIKIA')
            #response = em.email_send1(request=request._request).data
            response = em.email_send1(request=request._request.POST["first_name"]="sourabh").data
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

标签: djangodjango-rest-frameworkdjango-views

解决方案


您可以通过 访问该User对象request.user。例如:

em.email_send1(request, first_name=request.user.first_name, last_name=request.user.last_name)

请注意,默认的 DjangoUser模型(来自django.contrib.auth)没有中间名属性。


推荐阅读